/* =============================================
   PÁGINAS INTERNAS - VARIABLES Y ESTILOS
   =============================================
   Define :root con fuentes, colores y tamaños.
   Cada selector referencia las variables.
   Editá las variables en :root para cambiar
   la apariencia de TODAS las páginas internas.
   NO afecta la página de inicio (home).
   ============================================= */


/* =============================================
   :ROOT - VARIABLES DEL SITIO
   ============================================= */

:root {

    /* --- Fuentes --- */
    --font-principal: "Raleway", sans-serif;

    /* --- Paleta de Colores --- */
    --color-primary: #C51A1B;
    --color-primary-hover: #a01516;
    --color-white: #ffffff;
    --color-black: #000000;

    /* Texto */
    --color-text-dark: #444444;
    --color-text-body: #606060;
    --color-text-muted: #706F6F;
    --color-text-light: #8E8E8E;
    --color-text-meta: #999999;
    --color-text-white: #ffffff;

    /* Fondos */
    --color-bg-white: #ffffff;
    --color-bg-light: #f9f9f9;
    --color-bg-hover: #f0f0f0;
    --color-bg-submenu-hover: #f5f8fc;
    --color-bg-navbar: #B5AFA2;

    /* Bordes */
    --color-border-light: #e0e0e0;
    --color-border-input: #cccccc;
    --color-border-separator: #D8D4D3;
    --color-border-submenu: #f0f0f0;

    /* Submenu / Navbar móvil */
    --color-submenu-bg: #00254d;
    --color-submenu-bg-hover: #003d7a;

    /* Otros */
    --color-red-dark: #cc0000;
    --color-footer-red: #a89f91;
    --color-line-dark: #54595F;

    /* --- Tipografía: Tamaños --- */
    --fs-hero-title: 40px;
    --fs-hero-subtitle: 15px;
    --fs-page-title: 36px;
    --fs-section-title: 28px;
    --fs-subtitle: 26px;
    --fs-body: 16px;
    --fs-body-lg: 18px;
    --fs-small: 14px;
    --fs-xs: 13px;
    --fs-xxs: 12px;
    --fs-card-title: 18px;
    --fs-card-subtitle: 15px;
    --fs-badge: 17px;
    --fs-navbar: 23px;
    --fs-big-number: 48px;
    --fs-hero-big: 80px;
    --fs-single-title: 40px;
    --fs-single-heading: 26px;
    --fs-single-subheading: 22px;
    --fs-single-h4: 18px;
    --fs-single-body: 16px;

    /* --- Tipografia: Alineacion --- */
    --ta-h1: center;
    --ta-h2: justify;
    --ta-h3: justify;
    --ta-h4: justify;
    --ta-h5: justify;
    --ta-p: justify;
    --ta-a: justify;
    --ta-ul-li: justify;

}


/* =============================================
   1. BODY Y ELEMENTOS BASE
   ============================================= */

body {
    font-family: var(--font-principal);
}

h1 {
    font-family: var(--font-principal);
    text-align: var(--ta-h1);
}

h2 {
    font-family: var(--font-principal);
    text-align: var(--ta-h2);
}

h3 {
    font-family: var(--font-principal);
    text-align: var(--ta-h3);
}

h4 {
    font-family: "Raleway", Sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #c51a1b;
    margin-bottom: 15px;
}

p.parrafo-rojo {
    color: #c51a1b !important;
}

h5 {
    font-family: var(--font-principal);
    text-align: var(--ta-h5);
}

p {
    font-family: var(--font-principal);
    text-align: var(--ta-p);
    color: var(--color-text-white);
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 15px;    
}

a {
    font-family: var(--font-principal);
    text-align: var(--ta-a);
}

ul li {
    font-family: var(--font-principal);
    text-align: var(--ta-ul-li);
}

.fondo-gris-wrapper {
    overflow: initial !important;
}

/* =============================================
   2. NAVBAR (MENÚ PRINCIPAL)
   ============================================= */

/*
.navbar-nav > .menu-item > a {
    font-family: var(--font-principal);
    font-size: var(--fs-navbar);
}
*/

/* =============================================
   3. PÁGINA: LA INSTITUCIÓN
   ============================================= */

.la-institucion-hero__overlay h1 {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-hero-title);
}

.la-institucion-hero__texto h5 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-hero-subtitle);
}

.la-institucion-hero__texto p {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-hero-subtitle);
}

.la-institucion__header-text h1 {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-page-title);
}

.la-institucion__contenido-principal p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.la-institucion__contenido-principal h4{
    font-family: "Raleway", Sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #c51a1b;
    margin-bottom: 15px;
}

.paso-numerico__numero {
    font-family: var(--font-principal);
    font-size: var(--fs-big-number);
}

.paso-numerico__titulo {
    font-family: var(--font-principal);
    font-size: 20px;
    text-align: center;
}

.paso-numerico__leyenda {
    font-family: var(--font-principal);
    font-size: var(--fs-small);
}

.la-institucion__texto-basico h2,
.la-institucion__texto-basico h3 {
    font-family: var(--font-principal);
}

.la-institucion__texto-basico p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.la-institucion__texto-basico h4{
    font-family: "Raleway", Sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #c51a1b;
    margin-bottom: 15px;
}

.destacados-bloque h3 {
    text-align: center;

    font-family: "Raleway", Sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #c51a1b;
    margin-bottom: 15px;    
}


/* =============================================
   4. PÁGINA: SOMOS
   ============================================= */

.somos-hero__overlay h1 {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-hero-title);
}

.somos-hero__texto h5 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-hero-subtitle);
}

.somos-hero__texto p {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-hero-subtitle);
}

.somos__header-text h1 {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-page-title);
}

.somos__contenido-principal p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.somos__contenido-principal h2 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-subtitle);
}

.somos__contenido-principal h4{
    font-family: "Raleway", Sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #c51a1b;
    margin-bottom: 15px;
}

.icono-card {
    display: flex;
    flex-direction: column;
}

.icono-card__titulo {
    font-family: var(--font-principal);
    font-size: var(--fs-body);
    text-align: center;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}


/* =============================================
   5. PÁGINA: PERSONAS
   ============================================= */

.personas-hero__overlay h1 {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-hero-title);
}

.personas-hero__texto h5 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-hero-subtitle);
}

.personas-hero__texto p {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-hero-subtitle);
}

.personas__header-text h1 {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-page-title);
}

.personas__contenido-principal p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.personas__contenido-principal h4{
    font-family: "Raleway", Sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #c51a1b;
    margin-bottom: 15px;
}

.icono-card-personas__titulo {
    font-family: var(--font-principal);
    font-size: var(--fs-xs);
    text-align: center;
}

.personas__texto-basico h2,
.personas__texto-basico h3 {
    font-family: var(--font-principal);
}

.personas__texto-basico p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.personas__texto-basico ul li {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-card-subtitle);
}

.destacados-bloque-personas h3 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-section-title);
}


/* =============================================
   6. PÁGINA: ESNI BUSINESS SCHOOL
   ============================================= */

.ebs-hero__overlay h1 {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-hero-title);
}

.ebs-hero__texto h5 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-hero-subtitle);
}

.ebs-hero__texto p {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-hero-subtitle);
}

.ebs__header-text h1 {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-page-title);
}

.ebs__contenido-principal h2 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: 24px;
}

.ebs__contenido-principal p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.ebs__contenido-principal h4{
    font-family: "Raleway", Sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #c51a1b;
    margin-bottom: 15px;
}

.ebs__contenido-principal ul li {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.bloque-rojo__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: 20px;
    text-align: center !important;
}

.bloque-rojo__leyenda {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-small);
}

.ebs__aclaraciones h2,
.ebs__aclaraciones h3 {
    font-family: var(--font-principal);
}

.ebs__aclaraciones p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}


/* =============================================
   7. PÁGINA: ENTRADAS (BLOG POR CATEGORÍA)
   ============================================= */

.entradas-por-categoria__titulo {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-page-title);
}

.entradas-por-categoria__categoria {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: 24px;
}

.entrada-card__fecha {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-xxs);
}

.entrada-card__titulo a {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-card-title);
}

.entrada-card__excerpt {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: var(--fs-small);
}

.entrada-card__enlace {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-small);
}


/* =============================================
   8. PÁGINA: NUESTROS ALUMNOS
   ============================================= */

.nuestros-alumnos-hero__overlay h1 {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-hero-title);
}

.nuestros-alumnos-hero__texto h5 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-hero-subtitle);
}

.nuestros-alumnos-hero__texto p {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-hero-subtitle);
}

.nuestros-alumnos__contenido-principal p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body-lg);
}

.nuestros-alumnos__aclaraciones h2,
.nuestros-alumnos__aclaraciones h3 {
    font-family: var(--font-principal);
}

.nuestros-alumnos__aclaraciones p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.badge-titulo h3 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: 24px;
}

.nuestros-alumnos__texto-basico h3 {
    font-family: var(--font-principal);
}

.nuestros-alumnos__texto-basico ul li {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}


/* =============================================
   9. ARCHIVO: AGENDA DE CURSOS
   ============================================= */

.agenda-hero__overlay h1 {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-hero-title);
}

.agenda-hero__texto h5 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-hero-subtitle);
}

.agenda-hero__texto p {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-hero-subtitle);
}

.agenda-sidebar__filtro-activo-texto {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-small);
}

.agenda-sidebar__btn-borrar {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-xxs);
}

.agenda-sidebar__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-body);
}

.agenda-sidebar__subtitulo {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: var(--fs-small);
}

.agenda-sidebar__opcion {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-xs);
}

.agenda-sidebar__btn-aplicar {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-xs);
}

.agenda-card__share-label {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-xs);
}

.agenda-card__programa {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-badge);
}

.agenda-card__dia {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: calc(35px + (70 - 35) * ((100vw - 300px) / (1600 - 300)));
}

.agenda-card__mes {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: calc(24px + (35 - 24) * ((100vw - 300px) / (1600 - 300)));
}

.agenda-card__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: calc(18px + (20 - 18) * ((100vw - 300px) / (1600 - 300)));
}

.agenda-card__detalle {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-card-title);
}

.agenda-card__badge {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: calc(13px + (15 - 13) * ((100vw - 300px) / (1600 - 300)));
}

.agenda-card__vacantes {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: var(--fs-card-title);
}

.agenda-card__btn-info {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-xs);
}

.agenda-cursos__vacio {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-body);
}

.agenda-single__dia {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: 64px;
}

.agenda-single__mes {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: 22px;
}

.agenda-single__detalles p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}


/* =============================================
   10. ARCHIVO/SINGLE: PROGRAMAS / CURSOS
   ============================================= */

.programas-hero__titulo {
    font-family: var(--font-principal);
    font-size: var(--fs-hero-big);
}

.programas-hero__texto {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: calc(14px + (18 - 14) * ((100vw - 300px) / (1600 - 300)));
}

.programas-tabs__btn {
    font-family: var(--font-principal);
    font-size: 20px;
}

.programas-detalle__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: calc(20px + (28 - 20) * ((100vw - 300px) / (1600 - 300)));
}

.programas-detalle__texto {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: calc(14px + (16 - 14) * ((100vw - 300px) / (1600 - 300)));
}

.programas-detalle__texto pre {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: 30px;
}

.programas-detalle__texto h2 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-card-title);
}

.programas-detalle__texto h3 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-small);
}

.programas-detalle__texto p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-card-subtitle);
}

.programas-cursos__titulo {
    font-family: var(--font-principal);
    font-size: calc(16px + (22 - 16) * ((100vw - 300px) / (1600 - 300)));
}

.programas-cursos__card-titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: calc(14px + (16 - 14) * ((100vw - 300px) / (1600 - 300)));
}

.programas-cursos__btn {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-small);
}

.programas-cursos__vacio {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-body);
}

.curso-hero__titulo {
    font-family: var(--font-principal);
    font-size: var(--fs-hero-big);
}

.curso-tabs__btn {
    font-family: var(--font-principal);
    font-size: 20px;
}

.curso-info__subtitulo {
    margin: 0 20px 0;
    line-height: 1.3;

    color: var(--color-primary);
    font-family: var(--font-principal);
    font-size: var(--fs-hero-title);
    font-weight: 600;
    font-style: italic;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.curso-detalle-texto__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.curso-detalle-texto__contenido {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: calc(14px + (16 - 14) * ((100vw - 300px) / (1600 - 300)));
}

.curso-secciones__titulo {
    font-family: var(--font-principal);
    font-size: var(--fs-body);
}

.curso-secciones__texto {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: calc(14px + (16 - 14) * ((100vw - 300px) / (1600 - 300)));
}

.curso-secciones__texto p{
    color: var(--color-text-dark);
}

.curso-datos__label {
    font-family: var(--font-principal);
    font-size: var(--fs-xxs);
}

.curso-datos__valor {
    font-family: var(--font-principal);
    font-size: var(--fs-small);
}

.curso-accordion__header {
    font-family: var(--font-principal);
}

.curso-accordion__btn {
    font-family: var(--font-principal);
    color: var(--color-primary);
}

.curso-accordion__texto {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.curso-accordion__texto p{
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.curso-volver__btn {
    font-family: var(--font-principal);
}

.admision-form__label-select {
    font-family: var(--font-principal);
    color: var(--color-text-body);
}

.admision-form__select {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.admision-form__checkbox-general {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.admision-form__seccion-header {
    font-family: var(--font-principal);
    color: var(--color-white);
}

.admision-form__subtitulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
}

.admision-form__label {
    font-family: var(--font-principal);
    color: var(--color-text-body);
}

.admision-form__input,
.admision-form__select,
.admision-form__textarea {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.admision-form__idioma-titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
}

.admision-form__select-sm,
.admision-form__input-sm {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.admision-form__checkbox-text {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.admision-form__texto-legal {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
}

.admision-form__btn-enviar {
    font-family: var(--font-principal);
    color: var(--color-text-white);
}

.admision-form__msg {
    font-family: var(--font-principal);
    color: var(--color-text-body);
}

.curso-info-content__titulo,
.curso-malla-content__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
}

.curso-info-content__texto,
.curso-malla-content__item {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.curso-pasos__header {
    font-family: var(--font-principal);
    color: var(--color-white);
}

.curso-pasos__contenido {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.curso-pasos__numero {
    font-family: var(--font-principal);
    color: var(--color-bg-white);
}

.curso-pasos__item span:last-child {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.curso-pasos__email {
    font-family: var(--font-principal);
    color: var(--color-primary);
}

.curso-dudas__titulo {
    margin: 0 20px 0;
    line-height: 1.3;

    color: var(--color-primary);
    font-family: var(--font-principal);
    font-size: var(--fs-hero-title);
    font-weight: 600;
    font-style: italic;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.dudas-form__label {
    font-family: var(--font-principal);
    color: var(--color-text-body);
}

.dudas-form__input,
.dudas-form__select,
.dudas-form__textarea {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.dudas-form__header {
    font-family: var(--font-principal);
    color: var(--color-bg-white);
}

.dudas-form__texto-legal {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
}

.dudas-form__checkbox {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.dudas-form__btn-enviar {
    font-family: var(--font-principal);
    color: var(--color-text-white);
}

.dudas-form__msg {
    font-family: var(--font-principal);
    color: var(--color-text-body);
}

.curso-malla-download__titulo {
    margin: 0 20px 0;
    line-height: 1.3;

    color: var(--color-primary);
    font-family: var(--font-principal);
    font-size: var(--fs-hero-title);
    font-weight: 600;
    font-style: italic;
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}

.curso-malla-download__texto {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
}

.curso-malla-download__btn {
    font-family: var(--font-principal);
    color: var(--color-text-white);
}

/* =============================================
   11. ARCHIVO/SINGLE: WEBINARS
   ============================================= */

.webinars-hero__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-hero-title);
}

.webinars-hero__subtitulo {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-card-title);
}

.webinars-card__fecha {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-xs);
}

.webinars-card__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-card-title);
}

.webinars-card__excerpt {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: var(--fs-small);
}

.webinars-card__btn {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-small);
}

.webinar-single__fecha {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-small);
}

.webinar-single__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-single-subheading);
}

.webinar-single__descripcion p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.webinars__vacio {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-body);
}


/* =============================================
   12. ARCHIVO/SINGLE: AUTOAPRENDIZAJE
   ============================================= */

.autoaprendizaje-hero__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-hero-title);
}

.autoaprendizaje-hero__subtitulo {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-card-title);
}

.autoaprendizaje-card__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-card-title);
}

.autoaprendizaje-card__descripcion {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: var(--fs-small);
}

.autoaprendizaje-single__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-single-subheading);
}

.autoaprendizaje-single__contenido p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.autoaprendizaje-quiz__pregunta {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-card-title);
}

.autoaprendizaje-quiz__opcion {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.autoaprendizaje__vacio {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-body);
}

.aa-tests__aviso p{
    color: var(--color-text-body);
}

/* =============================================
   13. ARCHIVO/SINGLE: DICCIONARIO
   ============================================= */

.diccionario-hero__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-hero-title);
}

.diccionario-hero__subtitulo {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-card-title);
}

.diccionario-card__termino {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-card-title);
}

.diccionario-card__definicion {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: var(--fs-small);
}

.diccionario-single__termino {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-single-subheading);
}

.diccionario-single__definicion p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.diccionario__vacio {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-body);
}


/* =============================================
   14. ARCHIVO/SINGLE: BLOG
   ============================================= */

.blog-hero__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-hero-title);
}

.blog-hero__subtitulo {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-card-title);
}

.blog-card__fecha {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-xs);
}

.blog-card__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-card-title);
}

.blog-card__excerpt {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: var(--fs-small);
}

.blog-card__enlace {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-small);
}

.blog-single__fecha {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-small);
}

.blog-single__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-single-subheading);
}

.blog-single__contenido p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.blog-single-content__texto p {
    color: var(--color-text-body);
}

.blog__vacio {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-body);
}


/* =============================================
   15. ARCHIVO/SINGLE: LINKS DE INTERÉS
   ============================================= */

.links-hero__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: var(--fs-hero-title);
}

.links-hero__subtitulo {
    font-family: var(--font-principal);
    color: var(--color-text-light);
    font-size: var(--fs-card-title);
}

.links-card__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-card-title);
}

.links-card__descripcion {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
    font-size: var(--fs-small);
}

.links-card__enlace {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-small);
}

.links-single__titulo {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-single-subheading);
}

.links-single__contenido p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-body);
}

.links__vacio {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-body);
}


/* =============================================
   16. SINGLE: ENTRADA (GENÉRICO)
   ============================================= */

.single-entrada__categoria {
    font-family: var(--font-principal);
    color: var(--color-text-white);
    font-size: 11px;
}

.single-entrada__titulo {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-single-title);
}

.single-entrada__meta {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-small);
}

.single-entrada__body {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-single-body);
}

.single-entrada__body h1 {
    font-family: var(--font-principal);
    color: var(--color-primary);
    font-size: var(--fs-single-title);
}

.single-entrada__body h2 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-single-heading);
}

.single-entrada__body h3 {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-single-subheading);
}

.single-entrada__body h4 {
    font-family: "Raleway", Sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    color: #c51a1b;
    margin-bottom: 15px;
}

.single-entrada__body h5 {
    font-family: var(--font-principal);
    color: var(--color-red-dark);
    font-size: var(--fs-single-h4);
}

.single-entrada__body p {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-single-body);
}

.single-entrada__body ul {
    font-family: var(--font-principal);
    color: var(--color-text-dark);
    font-size: var(--fs-single-body);
}

.single-entrada__body a {
    color: var(--color-primary);
}

.single-entrada__body a:hover {
    color: var(--color-primary-hover);
}

.single-entrada__nav-label {
    font-family: var(--font-principal);
    color: var(--color-text-meta);
    font-size: var(--fs-xxs);
}

.single-entrada__nav-title {
    font-family: var(--font-principal);
    color: var(--color-text-body);
    font-size: var(--fs-small);
}


/* =============================================
   17. SECCIONES COMPARTIDAS
   ============================================= */

/* Sección Calendario */
.seccion-calendario__titulo {
    font-family: var(--font-principal);
    text-align: center;
}

.seccion-calendario__item-titulo {
    font-family: var(--font-principal);
}

.seccion-calendario__item-texto {
    font-family: var(--font-principal);
}

.seccion-calendario__item .elementor-post__title a {
    text-align: justify;
}

.seccion-calendario__item .elementor-post__title {
    text-align: justify;
}

/* Sección Programas */
.seccion-programas__titulo {
    font-family: var(--font-principal);
}

.seccion-programas__subtitulo {
    font-family: var(--font-principal);
}

.seccion-programas__card-titulo {
    font-family: var(--font-principal);
}

/* Sección Webinars */
.seccion-webinars__titulo {
    font-family: var(--font-principal);
}

.seccion-webinars__subtitulo {
    font-family: var(--font-principal);
}

.seccion-webinars__card-titulo {
    font-family: var(--font-principal);
}

/* Sección Innovación */
.seccion-innovacion__heading {
    font-family: var(--font-principal);
}

.seccion-innovacion__subtext {
    font-family: var(--font-principal);
}

/* Sección Contacto */
.seccion-contacto__titulo {
    font-family: var(--font-principal);
    color: var(--color-primary);
}

.seccion-contacto__texto {
    font-family: var(--font-principal);
}

/* Sección Cursos Webinars */
.seccion-cursos-webinars__titulo {
    font-family: var(--font-principal);
}

.seccion-cursos-webinars__card-titulo {
    font-family: var(--font-principal);
}

/* Sección Footer Menu */
.seccion-footer-menu__titulo {
    font-family: var(--font-principal);
}

.seccion-footer-menu__item {
    font-family: var(--font-principal);
}


/* =============================================
   18. FOOTER
   ============================================= */

.site-footer__contacto {
    font-family: var(--font-principal);
    color: var(--color-text-muted);
}

.site-footer__contacto a {
    color: var(--color-text-meta);
}

.site-footer__contacto a:hover {
    color: var(--color-primary);
}

.site-footer__red {
    color: var(--color-footer-red);
}

.site-footer__red:hover {
    color: var(--color-primary);
}

.footer-contacto__label {
    font-family: var(--font-principal);
}

.footer-contacto__texto {
    font-family: var(--font-principal);
}

.footer-social__link {
    font-family: var(--font-principal);
}

.footer-menu__item {
    font-family: var(--font-principal);
}

.footer-copy {
    font-family: var(--font-principal);
}


/* =============================================
   19. MEDIA QUERIES RESPONSIVE
   ============================================= */

/* ≥ 1920px */
@media (min-width: 1920px) {

    :root {
        --fs-hero-title: 42px;
        --fs-page-title: 42px;
        --fs-section-title: 32px;
        --fs-body-lg: 20px;
        --fs-big-number: 56px;
    }

    .la-institucion__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .paso-numerico__numero {
        font-size: var(--fs-big-number);
    }

    .destacados-bloque h3 {
        font-size: var(--fs-section-title);
    }

    .somos__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .icono-card__titulo {
        font-size: 18px;
    }

    .personas__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .icono-card-personas__titulo {
        font-size: 15px;
    }

    .destacados-bloque-personas h3 {
        font-size: var(--fs-section-title);
    }

    .ebs__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .bloque-rojo__titulo {
        font-size: 24px;
    }

    .nuestros-alumnos__contenido-principal p {
        font-size: var(--fs-body-lg);
    }

    .bloque-rojo__titulo {
        font-size: 22px;
    }

    .bloque-rojo__leyenda {
        font-size: var(--fs-body);
    }

    .badge-titulo h3 {
        font-size: 28px;
    }
}

/* 1024px – 1199px */
@media (min-width: 1024px) and (max-width: 1199px) {

    :root {
        --fs-hero-title: 32px;
        --fs-page-title: 32px;
        --fs-section-title: 24px;
        --fs-big-number: 40px;
    }

    .la-institucion__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .paso-numerico__numero {
        font-size: var(--fs-big-number);
    }

    .paso-numerico__titulo {
        font-size: 18px;
    }

    .destacados-bloque h3 {
        font-size: var(--fs-section-title);
    }

    .somos__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .icono-card__titulo {
        font-size: 15px;
    }

    .personas__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .icono-card-personas__titulo {
        font-size: var(--fs-xxs);
    }

    .ebs__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .bloque-rojo__titulo {
        font-size: 18px;
    }

    .nuestros-alumnos__contenido-principal p {
        font-size: 17px;
    }

    .bloque-rojo__titulo {
        font-size: 18px;
    }

    .bloque-rojo__leyenda {
        font-size: var(--fs-xs);
    }

    .badge-titulo h3 {
        font-size: 22px;
    }
}

/* 768px – 1023px */
@media (min-width: 768px) and (max-width: 1023px) {

    :root {
        --fs-hero-title: 28px;
        --fs-page-title: 28px;
        --fs-section-title: 22px;
        --fs-body: 15px;
        --fs-big-number: 36px;
    }

    .la-institucion__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .paso-numerico__numero {
        font-size: var(--fs-big-number);
    }

    .paso-numerico__titulo {
        font-size: var(--fs-body);
    }

    .paso-numerico__leyenda {
        font-size: var(--fs-xs);
    }

    .destacados-bloque h3 {
        font-size: var(--fs-section-title);
    }

    .somos__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .icono-card__titulo {
        font-size: var(--fs-small);
    }

    .personas__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .icono-card-personas__titulo {
        font-size: 11px;
    }

    .ebs__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .bloque-rojo__titulo {
        font-size: var(--fs-body);
    }

    .bloque-rojo__leyenda {
        font-size: var(--fs-xs);
    }

    .nuestros-alumnos__contenido-principal p {
        font-size: var(--fs-body);
    }

    .badge-titulo h3 {
        font-size: 20px;
    }
}

/* ≤ 991px (hero titles) */
@media (max-width: 991px) {

    .la-institucion-hero__titulo {
        font-size: 32px;
    }

    .somos-hero__titulo {
        font-size: 32px;
    }

    .agenda-hero__titulo {
        font-size: 32px;
    }

    .nuestros-alumnos-hero__titulo {
        font-size: 32px;
    }
}

/* ≤ 767px */
@media (max-width: 767px) {

    :root {
        --fs-hero-title: 26px;
        --fs-page-title: 24px;
        --fs-section-title: 20px;
        --fs-body: 14px;
        --fs-body-lg: 15px;
        --fs-big-number: 32px;
    }

    .la-institucion-hero__titulo {
        font-size: var(--fs-hero-title);
    }

    .la-institucion__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .la-institucion__contenido-principal p {
        font-size: var(--fs-body);
    }

    .paso-numerico__numero {
        font-size: var(--fs-big-number);
    }

    .paso-numerico__titulo {
        font-size: var(--fs-body);
    }

    .paso-numerico__leyenda {
        font-size: var(--fs-xxs);
    }

    .la-institucion__texto-basico h2,
    .la-institucion__texto-basico h3 {
        font-size: 20px;
    }

    .la-institucion__texto-basico p {
        font-size: var(--fs-body);
    }

    .destacados-bloque h3 {
        font-size: 20px;
    }

    .somos-hero__titulo {
        font-size: var(--fs-hero-title);
    }

    .somos__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .somos__contenido-principal p {
        font-size: var(--fs-body);
    }

    .icono-card__titulo {
        font-size: var(--fs-small);
    }

    .personas-hero__titulo {
        font-size: var(--fs-hero-title);
    }

    .personas__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .personas__contenido-principal p {
        font-size: var(--fs-body);
    }

    .icono-card-personas__titulo {
        font-size: 11px;
    }

    .personas__texto-basico h2,
    .personas__texto-basico h3 {
        font-size: 18px;
    }

    .personas__texto-basico p {
        font-size: var(--fs-body);
    }

    .destacados-bloque-personas h3 {
        font-size: 20px;
    }

    .ebs-hero__titulo {
        font-size: var(--fs-hero-title);
    }

    .ebs__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .ebs__contenido-principal h2 {
        font-size: 20px;
    }

    .ebs__contenido-principal p,
    .ebs__contenido-principal ul li {
        font-size: var(--fs-body);
    }

    .bloque-rojo__titulo {
        font-size: var(--fs-body);
    }

    .bloque-rojo__leyenda {
        font-size: var(--fs-xxs);
    }

    .ebs__aclaraciones h2,
    .ebs__aclaraciones h3 {
        font-size: 20px;
    }

    .ebs__aclaraciones p {
        font-size: var(--fs-body);
    }

    .single-entrada__titulo {
        font-size: 28px;
    }

    .agenda-hero__titulo {
        font-size: var(--fs-hero-title);
    }

    .agenda-card__dia {
        font-size: 36px;
    }

    .agenda-card__mes {
        font-size: var(--fs-small);
    }

    .agenda-single__dia {
        font-size: 42px;
    }

    .agenda-single__mes {
        font-size: var(--fs-body);
    }

    .nuestros-alumnos-hero__titulo {
        font-size: var(--fs-hero-title);
    }

    .nuestros-alumnos__contenido-principal p {
        font-size: var(--fs-body-lg);
    }

    .bloque-rojo__titulo {
        font-size: var(--fs-body);
    }

    .bloque-rojo__leyenda {
        font-size: var(--fs-xs);
    }

    .badge-titulo h3 {
        font-size: 18px;
    }

    .nuestros-alumnos__aclaraciones h2,
    .nuestros-alumnos__aclaraciones h3 {
        font-size: 18px;
    }

    .nuestros-alumnos__aclaraciones p {
        font-size: var(--fs-body);
    }

    .destacados-bloque h3 {
        font-size: 18px;
    }

    .entradas-por-categoria__titulo {
        font-size: 28px;
    }
}

/* ≤ 575px */
@media (max-width: 575px) {

    .entradas-por-categoria__titulo {
        font-size: 28px;
    }
}

/* ≤ 480px */
@media (max-width: 480px) {

    :root {
        --fs-page-title: 20px;
        --fs-big-number: 28px;
        --fs-section-title: 18px;
    }

    .la-institucion__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .paso-numerico__numero {
        font-size: var(--fs-big-number);
    }

    .paso-numerico__titulo {
        font-size: var(--fs-small);
    }

    .destacados-bloque h3 {
        font-size: var(--fs-section-title);
    }

    .somos__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .icono-card__titulo {
        font-size: var(--fs-xs);
    }

    .personas__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .icono-card-personas__titulo {
        font-size: var(--fs-xxs);
    }

    .ebs__header-text h1 {
        font-size: var(--fs-page-title);
    }

    .bloque-rojo__titulo {
        font-size: var(--fs-small);
    }

    .destacados-bloque h3 {
        font-size: var(--fs-section-title);
    }

    .nuestros-alumnos__contenido-principal p {
        font-size: var(--fs-body);
    }

    .bloque-rojo__titulo {
        font-size: var(--fs-small);
    }

    .bloque-rojo__leyenda {
        font-size: var(--fs-xxs);
    }

    .badge-titulo h3 {
        font-size: var(--fs-body);
    }

    .nuestros-alumnos__aclaraciones h2,
    .nuestros-alumnos__aclaraciones h3 {
        font-size: var(--fs-body);
    }

    .nuestros-alumnos__aclaraciones p {
        font-size: var(--fs-xs);
    }

    .nuestros-alumnos__texto-basico ul li {
        font-size: var(--fs-body);
    }

    .destacados-bloque h3 {
        font-size: var(--fs-body);
    }
}
