/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

:root {
    --tej-font-heading: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body:not(.wp-admin) h1,
body:not(.wp-admin) h2,
body:not(.wp-admin) h3,
body:not(.wp-admin) h4,
body:not(.wp-admin) h5,
body:not(.wp-admin) h6,
body:not(.wp-admin) .entry-title,
body:not(.wp-admin) .widget-title,
body:not(.wp-admin) .footer-widgets .widget-title,
body:not(.wp-admin) .site-footer .widget-title,
body:not(.wp-admin) summary h1,
body:not(.wp-admin) summary h2,
body:not(.wp-admin) summary h3,
body:not(.wp-admin) summary h4,
body:not(.wp-admin) summary h5,
body:not(.wp-admin) summary h6 {
    font-family: var(--tej-font-heading);
}

/* 1Estilo base para el modal */
	.boton-modal-si {
		display: block;
    text-align: center;
    background: #44cb53;
    padding: 8px;
    font-weight: bold;
    border-radius: 10px;
    color: #fff;
    text-decoration: none;
	}
	.boton-modal-si:hover, .boton-modal-si:focus {
		background: #349e40;
	}
	.boton-modal-no {
		display: block;
    text-align: center;
    background: #d63838;
    padding: 8px;
    font-weight: bold;
    margin-top: 10px;
    border-radius: 10px;
    color: #fff;
    text-decoration: none;
	}
	.boton-modal-no:hover, .boton-modal-no:focus {
		background: #b43030;
	}
	.texto-modal {
		font-size: 16px;
    text-align: center;
	}
	.modal-titulo {
		font-size: 20px;
    font-weight: bolder;
    text-align: center;
    display: block;
    margin-bottom: 10px;
	}
.modal {
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.4); /* Color de fondo con opacidad */
	  display: none;
    align-items: center;    /* Centramos verticalmente */
    justify-content: center;/* Centramos horizontalmente */
}
	.mostrar-modal {
    display: flex;
}

.modal-contenido {
    background-color: #fefefe;
    margin: 0;
    padding: 20px;
    border: 1px solid #888;
    width: 25%; /* Ancho del modal */
	  border-radius: 15px;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
	  position: relative;
}

.modal-cerrar {
    color: #aaa;
    position: absolute;    /* Usamos posiciÃ³n absoluta para la "X" */
    top: -7px;             /* Desplazamiento desde la parte superior */
    right: 16px;           /* Desplazamiento desde la derecha */
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;       /* Cambia el cursor a una mano al pasar por encima */
}

.modal-cerrar:hover, .modal-cerrar:focus {
    color: black;
}

/* Estilos responsivos */
@media screen and (max-width: 600px) {
    .modal-contenido {
        width: 85%;
    }
}

/* Fase 7: modernizacion visual aislada para /ejemplos-de-convocatoria/ */
body.tej-modern-page .site-content {
    max-width: 980px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
}

body.tej-modern-page #primary {
    width: 100%;
    max-width: 900px;
    float: none;
    margin-left: auto;
    margin-right: auto;
}

body.tej-modern-page #right-sidebar {
    display: none;
}

body.tej-modern-page.separate-containers .inside-article,
body.tej-modern-page .inside-article {
    padding: 44px clamp(16px, 4vw, 40px);
}

/* El hero editorial ocupa todo el contenedor, sin tarjeta exterior. */
body.tej-modern-page.separate-containers .inside-article,
body.tej-modern-page .inside-article {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.tej-modern-page .entry-content {
    padding: 44px clamp(16px, 4vw, 40px);
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper {
    max-width: 840px;
    margin: 0 auto;
    color: #202124;
    font-size: 18px;
    line-height: 1.65;
    overflow-wrap: break-word;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper *,
body.tej-modern-page .entry-content .tej-modern-content-wrapper *::before,
body.tej-modern-page .entry-content .tej-modern-content-wrapper *::after {
    box-sizing: border-box;
}

body.tej-modern-page .entry-content .tej-article-intro {
    margin-bottom: 34px;
    font-size: 19px;
}

body.tej-modern-page .entry-content .tej-section,
body.tej-modern-page .entry-content .tej-note-box,
body.tej-modern-page .entry-content .tej-template-box,
body.tej-modern-page .entry-content .tej-steps-block,
body.tej-modern-page .entry-content .tej-faq-block,
body.tej-modern-page .entry-content .tej-related-resources {
    margin-top: 52px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2 {
    margin: 0 0 18px;
    color: #0D2B45;
    font-size: clamp(1.45rem, 2.4vw, 2rem);
    line-height: 1.25;
    font-weight: 750;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h3 {
    margin: 0 0 14px;
    color: #1b2835;
    font-size: clamp(1.16rem, 1.8vw, 1.42rem);
    line-height: 1.32;
    font-weight: 750;
}

body.tej-modern-page .entry-content .tej-definition-block + .tej-section {
    margin-top: 64px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper p {
    margin: 0 0 1rem;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper ul,
body.tej-modern-page .entry-content .tej-modern-content-wrapper ol {
    margin: 0 0 1.1rem 1.35rem;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper li + li {
    margin-top: 0.36rem;
}

body.tej-modern-page .entry-content .tej-note-box {
    padding: 22px 24px;
    border: 1px solid #d7e3ea;
    border-left: 5px solid #7fa9bd;
    border-radius: 8px;
    background: #f5f9fb;
}

body.tej-modern-page .entry-content .tej-note-box h2,
body.tej-modern-page .entry-content .tej-template-box h2 {
    font-size: clamp(1.22rem, 2vw, 1.55rem);
}

body.tej-modern-page .entry-content .tej-note-box p:last-child,
body.tej-modern-page .entry-content .tej-template-box p:last-child,
body.tej-modern-page .entry-content .tej-example-card p:last-child,
body.tej-modern-page .entry-content .tej-faq-item p:last-child {
    margin-bottom: 0;
}

body.tej-modern-page .entry-content .tej-template-box {
    padding: 26px;
    border: 1px solid #ded8c8;
    border-radius: 8px;
    background: #fbf8f0;
}

body.tej-modern-page .entry-content .tej-template-content {
    padding: 18px;
    border-radius: 6px;
    background: #fffdfa;
}

body.tej-modern-page .entry-content .tej-example-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    margin-top: 22px;
}

body.tej-modern-page .entry-content .tej-example-card {
    padding: 26px;
    border: 1px solid #dfe4e8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(32, 33, 36, 0.05);
}

body.tej-modern-page .entry-content .tej-example-card h3 {
    padding-bottom: 12px;
    border-bottom: 1px solid #edf0f2;
}

body.tej-modern-page .entry-content .tej-table-wrap {
    max-width: 100%;
    overflow-x: auto;
    margin: 18px 0 0;
    border: 1px solid #dfe4e8;
    border-radius: 8px;
    background: #fff;
}

body.tej-modern-page .entry-content .tej-table-wrap table {
    width: 100%;
    min-width: 560px;
    margin: 0;
    border-collapse: collapse;
}

body.tej-modern-page .entry-content .tej-table-wrap th,
body.tej-modern-page .entry-content .tej-table-wrap td {
    padding: 13px 15px;
    border: 1px solid #e3e7eb;
    vertical-align: top;
}

body.tej-modern-page .entry-content .tej-table-wrap th {
    background: #f3f6f8;
    color: #16202a;
    font-weight: 750;
}

body.tej-modern-page .entry-content .tej-steps-block {
    padding: 26px;
    border: 1px solid #dfe4e8;
    border-radius: 8px;
    background: #f8fafb;
}

body.tej-modern-page .entry-content .tej-steps-block ol {
    margin-bottom: 0;
}

body.tej-modern-page .entry-content .tej-faq-item {
    padding: 22px 0;
    border-top: 1px solid #e3e7eb;
}

body.tej-modern-page .entry-content .tej-faq-item:first-of-type {
    border-top: 0;
    padding-top: 0;
}

body.tej-modern-page .entry-content .tej-related-resources {
    padding: 24px;
    border: 1px solid #dfe4e8;
    border-radius: 8px;
    background: #f8fafb;
}

@media screen and (max-width: 768px) {
    body.tej-modern-page .site-content {
        padding-left: 16px;
        padding-right: 16px;
    }

    body.tej-modern-page.separate-containers .inside-article,
    body.tej-modern-page .inside-article {
        padding: 32px 18px;
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper {
        font-size: 17px;
    }

    body.tej-modern-page .entry-content .tej-article-intro {
        font-size: 18px;
    }
}

@media screen and (max-width: 430px) {
    body.tej-modern-page .site-content {
        padding-left: 12px;
        padding-right: 12px;
    }

    body.tej-modern-page.separate-containers .inside-article,
    body.tej-modern-page .inside-article {
        padding: 28px 14px;
    }

    body.tej-modern-page .entry-content .tej-note-box,
    body.tej-modern-page .entry-content .tej-template-box,
    body.tej-modern-page .entry-content .tej-example-card,
    body.tej-modern-page .entry-content .tej-steps-block,
    body.tej-modern-page .entry-content .tej-related-resources {
        padding: 18px;
    }

    body.tej-modern-page .entry-content .tej-template-content {
        padding: 14px;
    }

    body.tej-modern-page .entry-content .tej-table-wrap table {
        min-width: 520px;
    }
}

/* Fase 23: recursos relacionados de la pagina piloto. */
body.tej-modern-page .entry-content .tej-related-resources {
    position: relative;
    margin-top: 56px;
    padding: 30px 32px;
    border: 1px solid var(--tej-line);
    border-radius: 8px;
    background: #f8fbf9;
    box-shadow: 0 5px 16px rgba(23, 33, 43, 0.04);
}

body.tej-modern-page .entry-content .tej-related-resources__accent {
    display: block;
    overflow: hidden;
    width: 46px;
    height: 4px;
    margin-bottom: 15px;
    border-radius: 999px;
    background: var(--tej-green);
    color: transparent;
    font-size: 0;
    line-height: 0;
}

body.tej-modern-page .entry-content .tej-related-resources__title {
    margin: 0;
    padding: 0;
    color: var(--tej-title-navy);
    font-size: clamp(1.45rem, 2.2vw, 1.75rem);
    font-weight: 800;
    line-height: 1.16;
}

body.tej-modern-page .entry-content .tej-related-resources__title::before {
    content: none;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-related-resources__title::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-related-resources__intro {
    max-width: 760px;
    margin: 10px 0 22px;
    color: #52626d;
    font-size: 1rem;
    line-height: 1.6;
}

body.tej-modern-page .entry-content .tej-related-resources__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch;
}

body.tej-modern-page .entry-content .tej-related-resources__grid > br {
    display: none;
}

body.tej-modern-page .entry-content .tej-related-resource-card {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 18px;
    gap: 13px;
    align-items: center;
    min-height: 112px;
    padding: 17px;
    border: 1px solid #dce6e4;
    border-radius: 8px;
    background: #ffffff;
    color: var(--tej-title-navy);
    text-decoration: none;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

body.tej-modern-page .entry-content .tej-related-resource-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--tej-green-soft);
    color: var(--tej-green);
}

body.tej-modern-page .entry-content .tej-related-resource-card__icon svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

body.tej-modern-page .entry-content .tej-related-resource-card__content {
    min-width: 0;
}

body.tej-modern-page .entry-content .tej-related-resource-card__title,
body.tej-modern-page .entry-content .tej-related-resource-card__description {
    display: block;
}

body.tej-modern-page .entry-content .tej-related-resource-card__title {
    margin-bottom: 4px;
    color: var(--tej-title-navy);
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.25;
}

body.tej-modern-page .entry-content .tej-related-resource-card__description {
    color: #5d6c75;
    font-size: 0.9rem;
    line-height: 1.42;
}

body.tej-modern-page .entry-content .tej-related-resource-card__arrow {
    color: var(--tej-green);
    line-height: 0;
}

body.tej-modern-page .entry-content .tej-related-resource-card__arrow svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

body.tej-modern-page .entry-content .tej-related-resource-card:hover {
    border-color: rgba(37, 113, 93, 0.48);
    box-shadow: 0 7px 18px rgba(23, 33, 43, 0.09);
    transform: translateY(-2px);
}

body.tej-modern-page .entry-content .tej-related-resource-card:focus,
body.tej-modern-page .entry-content .tej-related-resource-card:focus-visible {
    outline: 3px solid rgba(37, 113, 93, 0.32);
    outline-offset: 3px;
}

@media screen and (max-width: 768px) {
    body.tej-modern-page .entry-content .tej-related-resources {
        padding: 24px;
    }
}

@media screen and (max-width: 560px) {
    body.tej-modern-page .entry-content .tej-related-resources {
        margin-top: 42px;
        padding: 22px 18px;
    }

    body.tej-modern-page .entry-content .tej-related-resources__grid {
        grid-template-columns: 1fr;
    }

    body.tej-modern-page .entry-content .tej-related-resource-card {
        min-height: 104px;
        padding: 15px;
    }
}

/* Fase 24: transparencia editorial exclusiva de la pagina piloto. */
body.tej-modern-page .entry-content .tej-editorial-info {
    margin-top: 42px;
    padding: 30px;
    border: 1px solid #e6ecf2;
    border-radius: 12px;
    background: #f8fbf9;
    color: #334155;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.tej-modern-page .entry-content .tej-editorial-info__apa {
    padding: 24px;
    border: 1px solid #e6ecf2;
    border-radius: 10px;
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-editorial-info__heading {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 14px;
}

body.tej-modern-page .entry-content .tej-editorial-info__heading h3 {
    margin: 0;
    padding-top: 8px;
    color: #0d2b45;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.3;
}

body.tej-modern-page .entry-content .tej-editorial-info__heading h3::before {
    content: "";
    display: block;
    width: 26px;
    height: 2px;
    margin-bottom: 6px;
    background: #1e7a46;
}

body.tej-modern-page .entry-content .tej-editorial-info__heading h3 span {
    color: #52626d;
    font-size: 0.82em;
    font-weight: 500;
}

body.tej-modern-page .entry-content .tej-editorial-info__icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #f0fdf4;
    color: #1e7a46;
}

body.tej-modern-page .entry-content .tej-editorial-info__icon svg,
body.tej-modern-page .entry-content .tej-editorial-info__copy svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-editorial-info__apa > p,
body.tej-modern-page .entry-content .tej-editorial-info__section > p {
    margin: 0 0 12px;
    font-size: 0.92rem;
    line-height: 1.55;
}

body.tej-modern-page .entry-content .tej-editorial-info__apa-reference {
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: space-between;
    margin-top: 18px;
    padding: 16px;
    border: 1px solid #dce5ea;
    border-radius: 8px;
    background: #f8fafc;
}

body.tej-modern-page .entry-content .tej-editorial-info__citation {
    min-width: 0;
    overflow-wrap: anywhere;
    color: #0d2b45;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.875rem;
    line-height: 1.6;
}

body.tej-modern-page .entry-content .tej-copy-button.tej-editorial-info__copy {
    position: static;
    flex: 0 0 auto;
    gap: 7px;
    width: auto;
    min-height: 38px;
    margin: 0;
    border-color: rgba(30, 122, 70, 0.45);
    border-radius: 7px;
    background: #ffffff;
    color: #1e7a46;
}

body.tej-modern-page .entry-content .tej-editorial-info__copy span {
    display: inline-flex;
}

body.tej-modern-page .entry-content .tej-editorial-info__apa-note {
    margin: 15px 0 0 !important;
    color: #52626d;
    font-size: 0.82rem !important;
}

body.tej-modern-page .entry-content .tej-editorial-info__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    margin-top: 28px;
}

body.tej-modern-page .entry-content .tej-editorial-info__section {
    padding: 0 0 0 26px;
    border-left: 1px solid #e6ecf2;
}

body.tej-modern-page .entry-content .tej-editorial-info__section:first-child {
    padding-left: 0;
    border-left: 0;
}

body.tej-modern-page .entry-content .tej-editorial-info__section:last-child {
    padding-right: 0;
}

body.tej-modern-page .entry-content .tej-editorial-info__section a,
body.tej-modern-page .entry-content .tej-editorial-info__corrections a {
    color: #2563eb;
    font-weight: 600;
    text-decoration: none;
}

body.tej-modern-page .entry-content .tej-editorial-info__section a:hover,
body.tej-modern-page .entry-content .tej-editorial-info__corrections a:hover {
    text-decoration: underline;
}

body.tej-modern-page .entry-content .tej-editorial-info__criteria {
    display: grid;
    gap: 9px;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.89rem;
    line-height: 1.45;
}

body.tej-modern-page .entry-content .tej-editorial-info__criteria li {
    position: relative;
    padding-left: 23px;
}

body.tej-modern-page .entry-content .tej-editorial-info__criteria li::before {
    content: "\2713";
    position: absolute;
    top: 0;
    left: 0;
    display: grid;
    width: 15px;
    height: 15px;
    place-items: center;
    border-radius: 50%;
    background: #1e7a46;
    color: #ffffff;
    font-size: 0.62rem;
    font-weight: 800;
}

body.tej-modern-page .entry-content .tej-editorial-info__corrections {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin-top: 28px;
    padding: 16px;
    border: 1px solid #bfdbfe;
    border-radius: 8px;
    background: #eff6ff;
}

body.tej-modern-page .entry-content .tej-editorial-info__corrections .tej-editorial-info__icon {
    width: 32px;
    height: 32px;
    background: transparent;
    color: #2563eb;
}

body.tej-modern-page .entry-content .tej-editorial-info__corrections p {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.55;
}

body.tej-modern-page .entry-content .tej-editorial-info a:focus-visible,
body.tej-modern-page .entry-content .tej-editorial-info__copy:focus-visible {
    outline: 3px solid rgba(37, 99, 235, 0.32);
    outline-offset: 3px;
}

/* Evita duplicar los metadatos y la cita heredados fuera del contenido piloto. */
body.tej-modern-page .inline-post-meta-area,
body.tej-modern-page .gb-container-8a25fc79:not(.inline-post-meta-area) {
    display: none;
}

/* Oculta metadatos y navegacion entre entradas; no afecta el footer global. */
article.post footer.entry-meta {
    display: none;
}

@media screen and (max-width: 1024px) {
    body.tej-modern-page .entry-content .tej-editorial-info__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
    }

    body.tej-modern-page .entry-content .tej-editorial-info__section:nth-child(3) {
        padding-left: 0;
        border-left: 0;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-editorial-info {
        margin-top: 34px;
        padding: 20px;
    }

    body.tej-modern-page .entry-content .tej-editorial-info__apa {
        padding: 18px;
    }

    body.tej-modern-page .entry-content .tej-editorial-info__apa-reference {
        flex-direction: column;
        align-items: stretch;
    }

    body.tej-modern-page .entry-content .tej-copy-button.tej-editorial-info__copy {
        align-self: flex-start;
    }

    body.tej-modern-page .entry-content .tej-editorial-info__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    body.tej-modern-page .entry-content .tej-editorial-info__section,
    body.tej-modern-page .entry-content .tej-editorial-info__section:nth-child(3) {
        padding: 0;
        border-left: 0;
    }
}

/* Fase 20: hero editorial aislado para /ejemplos-de-convocatoria/. */
body.tej-modern-page .entry-header:has(.tej-editorial-hero) {
    max-width: none;
    margin: 0;
    padding: 48px 56px;
    border: 0;
    border-radius: 0;
    background: linear-gradient(135deg, #f3f7ff 0%, #ffffff 58%, #eaf2ff 100%);
    box-shadow: none;
}

body.tej-modern-page .tej-editorial-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    grid-template-areas: "content ad" "benefits benefits";
    align-items: center;
    column-gap: 40px;
    row-gap: 28px;
}

body.tej-modern-page .tej-editorial-hero__content {
    grid-area: content;
    min-width: 0;
}

body.tej-modern-page .tej-editorial-hero .entry-title.tej-page-title {
    gap: 18px;
    max-width: none;
}

body.tej-modern-page .tej-editorial-hero .tej-page-title__prefix {
    min-height: 44px;
    padding: 9px 16px;
    border: 0;
    background: #e2f4eb;
    color: #07583f;
    font-size: clamp(1.125rem, 1.6vw, 1.375rem);
    font-weight: 700;
}

body.tej-modern-page .tej-editorial-hero .tej-page-title__topic {
    font-size: clamp(2rem, 4vw, 3.25rem);
    font-weight: 700;
    line-height: 1.04;
}

body.tej-modern-page .tej-editorial-hero__description {
    max-width: 590px;
    margin: 20px 0 0;
    color: #33415e;
    font-size: clamp(1rem, 1.45vw, 1.125rem);
    font-weight: 400;
    line-height: 1.55;
}

body.tej-modern-page .tej-hero-benefits {
    grid-area: benefits;
    display: flex;
    gap: 30px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.tej-modern-page .tej-hero-benefit {
    display: flex;
    flex: 0 1 auto;
    align-items: center;
    gap: 10px;
    min-width: 0;
    color: #22324f;
    font-size: 0.88rem;
    font-weight: 500;
    line-height: 1.35;
    white-space: nowrap;
}

body.tej-modern-page .tej-hero-benefit__icon {
    display: inline-flex;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #b7d4ff;
    border-radius: 50%;
    color: #1670e8;
}

body.tej-modern-page .tej-hero-benefit__icon svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .tej-hero-ad-slot {
    grid-area: ad;
    flex: 0 0 300px;
    width: 300px;
    height: 250px;
}

body.tej-modern-page .tej-hero-ad-slot img {
    display: block;
    width: 300px;
    height: 250px;
    object-fit: cover;
}

/* Fase 21: introduccion e indice post-hero aislados al piloto. */
body.tej-modern-page .entry-content .tej-post-hero-section {
    margin: 0 auto 36px;
}

body.tej-modern-page .entry-content .tej-post-hero-intro {
    margin: 0;
    padding: 28px 34px;
    border: 1px solid var(--tej-line);
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 6px 18px rgba(23, 33, 43, 0.04);
    color: var(--tej-title-navy);
    font-size: 1.05rem;
    line-height: 1.7;
}

body.tej-modern-page .entry-content .tej-post-hero-intro p,
body.tej-modern-page .entry-content .tej-post-hero-intro p:first-child {
    margin: 0;
    font-size: inherit;
    line-height: inherit;
}

body.tej-modern-page .entry-content .tej-post-hero-intro p + p {
    margin-top: 12px;
}

body.tej-modern-page .entry-content .tej-content-index {
    margin-top: 32px;
    padding-top: 30px;
    border-top: 1px solid #e4edf2;
}

body.tej-modern-page .entry-content .tej-content-index__heading {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px;
    color: var(--tej-title-navy);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.4;
}

body.tej-modern-page .entry-content .tej-content-index__heading svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: #2563eb;
    stroke-linecap: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-content-index__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-content-index__item {
    min-width: 0;
    margin: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-content-index__item + .tej-content-index__item {
    margin-top: 0;
}

body.tej-modern-page .entry-content .tej-content-index__item a {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    height: 100%;
    min-height: 58px;
    padding: 12px;
    border: 1px solid #dbe7ee;
    border-radius: 8px;
    background: #ffffff;
    color: var(--tej-title-navy);
    font-size: 0.88rem;
    font-weight: 500;
    line-height: 1.35;
    text-decoration: none;
}

body.tej-modern-page .entry-content .tej-content-index__item a:hover {
    border-color: #b9d5e7;
    background: #f8fbfd;
}

body.tej-modern-page .entry-content .tej-content-index__item a:focus-visible,
body.tej-modern-page .entry-content .tej-content-index__toggle:focus-visible {
    outline: 3px solid rgba(37, 99, 235, 0.28);
    outline-offset: 3px;
}

body.tej-modern-page .entry-content .tej-content-index__number {
    color: var(--tej-green);
    font-weight: 700;
}

body.tej-modern-page .entry-content .tej-content-index__label {
    min-width: 0;
}

body.tej-modern-page .entry-content .tej-content-index__chevron,
body.tej-modern-page .entry-content .tej-content-index__toggle svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: #2563eb;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-content-index__toggle {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    margin-top: 20px;
    padding: 9px 12px;
    border: 0;
    background: transparent;
    color: #2563eb;
    font: inherit;
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
}

body.tej-modern-page .entry-content .tej-content-index[data-expanded="true"] .tej-content-index__toggle svg {
    transform: rotate(180deg);
}

@media screen and (max-width: 1023px) {
    body.tej-modern-page .entry-content .tej-post-hero-intro {
        padding: 26px 28px;
    }

    body.tej-modern-page .entry-content .tej-content-index__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 767px) {
    body.tej-modern-page .entry-content .tej-content-index[data-expanded="false"] .tej-content-index__grid {
        display: none;
    }

    body.tej-modern-page .entry-content .tej-content-index__toggle {
        display: inline-flex;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-post-hero-section {
        margin-bottom: 28px;
    }

    body.tej-modern-page .entry-content .tej-post-hero-intro {
        padding: 22px 20px;
        font-size: 1rem;
    }

    body.tej-modern-page .entry-content .tej-content-index {
        margin-top: 24px;
        padding-top: 24px;
    }

    body.tej-modern-page .entry-content .tej-content-index__heading {
        font-size: 1.1rem;
    }

    body.tej-modern-page .entry-content .tej-content-index__grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

body.tej-modern-page .entry-content .tej-content-index__item a {
        min-height: 52px;
        padding: 11px 12px;
        font-size: 0.92rem;
    }
}

/* Mantiene el indice fuera del tratamiento visual de los H2 editoriales. */
body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-post-hero-section .tej-post-hero-intro {
    margin: 0;
    padding: 28px 34px;
    font-size: 1.05rem;
    line-height: 1.7;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-post-hero-section .tej-content-index__heading {
    padding-top: 0;
    color: var(--tej-title-navy);
    font-size: 1.25rem;
    line-height: 1.4;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-post-hero-section .tej-content-index__heading::before {
    display: none;
    content: none;
}

@media screen and (max-width: 1023px) {
    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-post-hero-section .tej-post-hero-intro {
        padding: 26px 28px;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-post-hero-section .tej-post-hero-intro {
        padding: 22px 20px;
        font-size: 1rem;
    }

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-post-hero-section .tej-content-index__heading {
        font-size: 1.1rem;
    }
}

/* Fase 22: flujo editorial posterior al indice, aislado al piloto. */
body.tej-modern-page .entry-content .tej-editorial-flow > .tej-editorial-section {
    margin-top: 48px;
}

body.tej-modern-page .entry-content .tej-editorial-flow > .tej-editorial-section > h2,
body.tej-modern-page .entry-content .tej-collapsible-section > summary h2 {
    margin: 0 0 18px;
    padding-top: 0;
    color: var(--tej-title-navy);
    font-size: clamp(1.5rem, 2.5vw, 2.15rem);
    font-weight: 700;
    line-height: 1.18;
}

body.tej-modern-page .entry-content .tej-editorial-flow > .tej-editorial-section:not(.tej-editorial-section--note) > h2 {
    color: #0D2B45;
}

body.tej-modern-page .entry-content .tej-editorial-flow > .tej-editorial-section > h2::before,
body.tej-modern-page .entry-content .tej-collapsible-section > summary h2::before {
    display: block;
    width: 44px;
    height: 3px;
    margin-bottom: 12px;
    border-radius: 999px;
    background: var(--tej-blue);
    content: "";
}

body.tej-modern-page .entry-content .tej-editorial-section--standard p,
body.tej-modern-page .entry-content .tej-editorial-section--collapsible p,
body.tej-modern-page .entry-content .tej-editorial-section--collapsible li {
    color: #334155;
    font-size: 1.04rem;
    line-height: 1.7;
}

body.tej-modern-page .entry-content .tej-editorial-section--note {
    padding: 22px 24px;
    border: 1px solid #ecd9ab;
    border-left: 5px solid #c8912f;
    border-radius: 11px;
    background: #fdf6e6;
    box-shadow: none;
}

body.tej-modern-page .entry-content .tej-editorial-section--note > h2 {
    margin-bottom: 10px;
    padding-top: 0;
    color: #3b2e18;
    font-size: clamp(1.12rem, 1.8vw, 1.35rem);
}

body.tej-modern-page .entry-content .tej-editorial-section--note > h2::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-editorial-section .tej-table-wrap {
    overflow-x: auto;
    border: 1px solid #e6ecf2;
    border-radius: 10px;
    box-shadow: none;
}

body.tej-modern-page .entry-content .tej-editorial-section .tej-table-wrap table {
    min-width: 640px;
    margin: 0;
}

body.tej-modern-page .entry-content .tej-editorial-section .tej-table-wrap th {
    background: #f0f6ff;
    color: var(--tej-title-navy);
}

body.tej-modern-page .entry-content .tej-parts-table {
    position: relative;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}

body.tej-modern-page .entry-content .tej-parts-table::after {
    position: sticky;
    right: 0;
    display: block;
    width: 28px;
    height: 1px;
    margin-top: -1px;
    margin-left: auto;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0), #ffffff 82%);
    content: "";
    pointer-events: none;
}

body.tej-modern-page .entry-content .tej-section .tej-parts-table table {
    min-width: 600px;
}

body.tej-modern-page .entry-content .tej-parts-table th,
body.tej-modern-page .entry-content .tej-parts-table td {
    padding: 15px 17px;
}

body.tej-modern-page .entry-content .tej-parts-table th {
    border-bottom-color: #d8e5f2;
    color: var(--tej-title-navy);
    font-weight: 700;
}

body.tej-modern-page .entry-content .tej-parts-table td:first-child {
    width: clamp(165px, 28%, 210px);
    min-width: 165px;
    background: #f8fafc;
    color: var(--tej-title-navy);
    font-weight: 600;
}

body.tej-modern-page .entry-content .tej-parts-table tbody tr:nth-child(even) td:not(:first-child) {
    background: #f8fafc;
}

body.tej-modern-page .entry-content .tej-parts-table tbody tr {
    transition: background-color 150ms ease;
}

@media (hover: hover) and (pointer: fine) {
    body.tej-modern-page .entry-content .tej-parts-table tbody tr:hover td {
        background: #f1f7fb;
    }

    body.tej-modern-page .entry-content .tej-parts-table tbody tr:hover td:not(:first-child) {
        background: #f1f7fb;
    }
}

@media screen and (max-width: 768px) {
    body.tej-modern-page .entry-content .tej-parts-table th,
    body.tej-modern-page .entry-content .tej-parts-table td {
        padding: 14px 16px;
    }
}

@media screen and (max-width: 430px) {
    body.tej-modern-page .entry-content .tej-parts-table th,
    body.tej-modern-page .entry-content .tej-parts-table td {
        padding: 13px 14px;
    }
}

body.tej-modern-page .entry-content .tej-editorial-section--template {
    padding: 26px;
    border-color: rgba(30, 122, 70, 0.24);
    border-radius: 11px;
    background: #f0fdf4;
    box-shadow: 0 2px 8px rgba(23, 33, 43, 0.04);
}

body.tej-modern-page .entry-content .tej-editorial-section--template .tej-template-content {
    border-color: rgba(30, 122, 70, 0.26);
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-examples-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}

body.tej-modern-page .entry-content .tej-examples-section[data-examples-expanded="false"] .tej-example-card:nth-child(n + 5) {
    display: none;
}

body.tej-modern-page .entry-content .tej-example-card {
    padding: 24px;
    border-radius: 11px;
    box-shadow: 0 2px 8px rgba(23, 33, 43, 0.05);
}

body.tej-modern-page .entry-content .tej-example-card h3 {
    color: var(--tej-title-navy);
    font-size: 1.05rem;
    line-height: 1.4;
}

body.tej-modern-page .entry-content .tej-examples-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    margin-top: 22px;
    padding: 9px 12px;
    border: 0;
    background: transparent;
    color: #2563eb;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
}

body.tej-modern-page .entry-content .tej-examples-toggle svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-examples-section[data-examples-expanded="true"] .tej-examples-toggle svg {
    transform: rotate(180deg);
}

body.tej-modern-page .entry-content .tej-examples-toggle:focus-visible,
body.tej-modern-page .entry-content .tej-collapsible-section > summary:focus-visible {
    outline: 3px solid rgba(37, 99, 235, 0.28);
    outline-offset: 3px;
}

body.tej-modern-page .entry-content .tej-collapsible-section {
    border: 1px solid #e6ecf2;
    border-radius: 10px;
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-collapsible-section > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 58px;
    padding: 16px 20px;
    cursor: pointer;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-collapsible-section > summary::-webkit-details-marker {
    display: none;
}

body.tej-modern-page .entry-content .tej-collapsible-section > summary h2 {
    flex: 1 1 auto;
    margin: 0;
    font-size: clamp(1.15rem, 2vw, 1.45rem);
}

body.tej-modern-page .entry-content .tej-collapsible-section > summary h2::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-collapsible-section__chevron {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    fill: none;
    stroke: #2563eb;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-collapsible-section[open] > summary {
    border-bottom: 1px solid #e6ecf2;
}

body.tej-modern-page .entry-content .tej-collapsible-section[open] .tej-collapsible-section__chevron {
    transform: rotate(180deg);
}

body.tej-modern-page .entry-content .tej-collapsible-section__body {
    padding: 4px 20px 22px;
}

@media screen and (max-width: 1023px) {
    body.tej-modern-page .entry-content .tej-examples-section[data-examples-expanded="false"] .tej-example-card:nth-child(n + 4) {
        display: none;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-editorial-flow > .tej-editorial-section {
        margin-top: 42px;
    }

    body.tej-modern-page .entry-content .tej-editorial-section--note,
    body.tej-modern-page .entry-content .tej-editorial-section--template,
    body.tej-modern-page .entry-content .tej-example-card {
        padding: 20px;
    }

    body.tej-modern-page .entry-content .tej-important-note {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 18px;
        padding: 22px 20px;
    }

    body.tej-modern-page .entry-content .tej-important-note__icon {
        width: 62px;
        height: 62px;
        margin: 0 auto;
    }

    body.tej-modern-page .entry-content .tej-important-note__icon svg {
        width: 38px;
        height: 38px;
    }

    body.tej-modern-page .entry-content .tej-important-note__separator {
        display: none;
    }

    body.tej-modern-page .entry-content .tej-examples-section[data-examples-expanded="false"] .tej-example-card:nth-child(n + 3) {
        display: none;
    }

    body.tej-modern-page .entry-content .tej-collapsible-section > summary {
        min-height: 52px;
        padding: 14px 16px;
    }

    body.tej-modern-page .entry-content .tej-collapsible-section__body {
        padding: 4px 16px 18px;
    }
}

@media screen and (max-width: 1100px) {
    body.tej-modern-page .entry-header:has(.tej-editorial-hero) {
        padding: 32px 40px;
    }

    body.tej-modern-page .tej-editorial-hero {
        gap: 28px;
    }

    body.tej-modern-page .tej-hero-benefits {
        gap: 14px;
    }
}

@media screen and (max-width: 900px) {
    body.tej-modern-page .tej-editorial-hero {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas: "content" "benefits";
    }

    body.tej-modern-page .tej-hero-ad-slot {
        display: none;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-header:has(.tej-editorial-hero) {
        padding: 24px;
    }

    body.tej-modern-page .entry-content {
        padding: 30px 16px;
    }

    body.tej-modern-page .tej-editorial-hero .entry-title.tej-page-title {
        gap: 14px;
    }

    body.tej-modern-page .tej-editorial-hero .tej-page-title__prefix {
        min-height: 38px;
        padding: 8px 13px;
        font-size: 1rem;
    }

    body.tej-modern-page .tej-editorial-hero .tej-page-title__topic {
        font-size: clamp(2rem, 10vw, 2.5rem);
    }

    body.tej-modern-page .tej-editorial-hero__description {
        margin-top: 16px;
        font-size: 1rem;
    }

    body.tej-modern-page .tej-hero-benefits {
        display: grid;
        gap: 12px;
        margin-top: 22px;
    }

    body.tej-modern-page .tej-hero-benefit {
        font-size: 0.92rem;
        white-space: normal;
    }

    body.tej-modern-page .tej-hero-benefit__icon {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
    }

    body.tej-modern-page .tej-hero-ad-slot {
        display: none;
    }
}

@media screen and (max-width: 390px) {
    body.tej-modern-page .site-content {
        padding-left: 12px;
        padding-right: 12px;
    }

    body.tej-modern-page.separate-containers .inside-article,
    body.tej-modern-page .inside-article {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/* Fase 7B: rebase visual controlado para /ejemplos-de-convocatoria/ */
body.tej-modern-page {
    --tej-ink: #17212b;
    --tej-muted: #52616f;
    --tej-bg: #f3f7f8;
    --tej-panel: #f8fbfc;
    --tej-card: #ffffff;
    --tej-line: #d8e3e7;
    --tej-line-strong: #b9ced7;
    --tej-blue: #174f73;
    --tej-blue-soft: #e8f4f8;
    --tej-green: #25715d;
    --tej-green-soft: #eaf6f1;
    --tej-amber: #8a6424;
    --tej-amber-soft: #fff7e7;
    --tej-shadow: 0 18px 42px rgba(23, 79, 115, 0.10);
    --tej-soft-shadow: 0 8px 24px rgba(23, 79, 115, 0.08);
    --tej-section-gap: 56px;
}

body.tej-modern-page .site-content {
    max-width: 1120px;
    background:
        linear-gradient(180deg, rgba(232, 244, 248, 0.68) 0, rgba(243, 247, 248, 0) 420px),
        var(--tej-bg);
}

body.tej-modern-page #primary {
    max-width: 1000px;
}

body.tej-modern-page.separate-containers .inside-article,
body.tej-modern-page .inside-article {
    position: relative;
    overflow: hidden;
    max-width: 1000px;
    margin: 0 auto;
    padding: 40px clamp(18px, 4vw, 48px) 52px;
    border: 1px solid var(--tej-line);
    border-radius: 8px;
    background: var(--tej-card);
    box-shadow: var(--tej-shadow);
}

body.tej-modern-page .entry-header {
    position: relative;
    max-width: 880px;
    margin: 0 auto 18px;
    padding: clamp(24px, 4.2vw, 42px);
    border: 1px solid var(--tej-line);
    border-radius: 8px;
    background: linear-gradient(135deg, #f7fbfc 0%, #ffffff 56%, #edf7fa 100%);
}

body.tej-modern-page .entry-header::before {
    content: "GuÃ­a prÃ¡ctica";
    display: inline-flex;
    width: max-content;
    max-width: 100%;
    margin-bottom: 14px;
    padding: 6px 10px;
    border: 1px solid rgba(37, 113, 93, 0.22);
    border-radius: 999px;
    background: var(--tej-green-soft);
    color: var(--tej-green);
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1;
    text-transform: uppercase;
}

body.tej-modern-page .entry-title {
    max-width: 720px;
    margin: 0;
    padding: 0;
    color: var(--tej-blue);
    font-size: clamp(2.05rem, 4vw, 3.1rem);
    line-height: 1.08;
    letter-spacing: 0;
}

body.tej-modern-page .entry-content {
    margin-top: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper {
    max-width: 860px;
    color: var(--tej-ink);
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper > :is(
    .tej-examples-section,
    .tej-word-bank,
    .tej-sentence-groups,
    .tej-primary-examples,
    .tej-language-comparison,
    .tej-table-wrap,
    .tej-practice-table,
    .tej-language-practice
) {
    margin-block-end: var(--tej-section-gap);
}

body.tej-modern-page .entry-content .tej-article-intro {
    margin: 0 auto 22px;
    padding: clamp(22px, 3.2vw, 32px);
    border: 1px solid var(--tej-line);
    border-radius: 8px;
    background: var(--tej-panel);
    box-shadow: var(--tej-soft-shadow);
    color: var(--tej-ink);
    font-size: clamp(1.05rem, 1.7vw, 1.17rem);
}

body.tej-modern-page .entry-content .tej-article-intro p:first-child {
    font-size: clamp(1.12rem, 2vw, 1.28rem);
    line-height: 1.62;
}

body.tej-modern-page .entry-content .tej-visual-index {
    margin: 0 auto 36px;
    padding: clamp(20px, 3vw, 28px);
    border: 1px solid var(--tej-line);
    border-radius: 8px;
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-index-kicker {
    margin: 0 0 14px;
    color: var(--tej-blue);
    font-size: 0.84rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1;
    text-transform: uppercase;
}

body.tej-modern-page .entry-content .tej-visual-index ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-visual-index li {
    position: relative;
    min-height: 44px;
    margin: 0;
    padding: 11px 12px 11px 34px;
    border: 1px solid #e3ecef;
    border-radius: 8px;
    background: var(--tej-panel);
    color: var(--tej-ink);
    font-size: 0.98rem;
    line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-visual-index li::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 13px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--tej-green);
}

body.tej-modern-page .entry-content .tej-section,
body.tej-modern-page .entry-content .tej-note-box,
body.tej-modern-page .entry-content .tej-template-box,
body.tej-modern-page .entry-content .tej-steps-block,
body.tej-modern-page .entry-content .tej-faq-block,
body.tej-modern-page .entry-content .tej-related-resources {
    margin-top: 56px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2 {
    position: relative;
    padding-top: 10px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2::before {
    content: "";
    display: block;
    width: 54px;
    height: 4px;
    margin-bottom: 14px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--tej-green), var(--tej-blue));
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h3 {
    color: #1d3445;
}

body.tej-modern-page .entry-content .tej-note-box {
    border: 1px solid #ecd9ab;
    border-left: 6px solid #c8912f;
    background: var(--tej-amber-soft);
    color: #3b2e18;
}

body.tej-modern-page .entry-content .tej-important-note {
    display: grid;
    grid-template-columns: 76px 1px minmax(0, 1fr);
    align-items: center;
    gap: 24px;
    width: 100%;
    padding: 28px 32px;
    border: 1px solid rgba(229, 162, 23, 0.68);
    border-radius: 16px;
    background: #fff9ed;
    box-shadow: none;
    color: #334155;
}

body.tej-modern-page .entry-content .tej-important-note__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 76px;
    height: 76px;
    border-radius: 50%;
    background: #fff1cc;
    color: #e5a217;
}

body.tej-modern-page .entry-content .tej-important-note__icon svg {
    width: 46px;
    height: 46px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.4;
}

body.tej-modern-page .entry-content .tej-important-note__separator {
    display: block;
    width: 1px;
    height: 86px;
    background: rgba(229, 162, 23, 0.72);
}

body.tej-modern-page .entry-content .tej-important-note__content {
    min-width: 0;
}

body.tej-modern-page .entry-content .tej-important-note__accent {
    display: block;
    width: 40px;
    height: 3px;
    margin-bottom: 13px;
    border-radius: 999px;
    background: #e5a217;
}

body.tej-modern-page .entry-content .tej-important-note__title {
    margin: 0 0 12px;
    padding-top: 0;
    color: #0d2b45;
    font-family: var(--tej-font-heading);
}

body.tej-modern-page .entry-content .tej-important-note__title::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-important-note__title::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-important-note__text {
    margin: 0;
    color: #334155;
    line-height: 1.65;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-important-note__title {
    color: #0d2b45;
}

body.tej-modern-page .entry-content .tej-template-box {
    border: 1px solid rgba(37, 113, 93, 0.28);
    background: linear-gradient(180deg, #f4fbf8 0%, #ffffff 100%);
    box-shadow: var(--tej-soft-shadow);
}

body.tej-modern-page .entry-content .tej-template-content {
    border: 1px dashed rgba(37, 113, 93, 0.32);
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-example-grid {
    gap: 20px;
}

body.tej-modern-page .entry-content .tej-example-card {
    position: relative;
    border: 1px solid var(--tej-line);
    background: #ffffff;
    box-shadow: 0 6px 18px rgba(23, 33, 43, 0.05);
}

body.tej-modern-page .entry-content .tej-example-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 6px;
    height: 100%;
    border-radius: 8px 0 0 8px;
    background: var(--tej-blue);
}

body.tej-modern-page .entry-content .tej-example-card h3 {
    margin-left: 4px;
    color: var(--tej-blue);
}

body.tej-modern-page .entry-content .tej-table-wrap {
    border-color: var(--tej-line);
    box-shadow: 0 6px 18px rgba(23, 33, 43, 0.04);
}

body.tej-modern-page .entry-content .tej-table-wrap th {
    background: #eef6f8;
    color: var(--tej-blue);
}

body.tej-modern-page .entry-content .tej-steps-block,
body.tej-modern-page .entry-content .tej-related-resources {
    border: 1px solid var(--tej-line);
    background: var(--tej-panel);
}

body.tej-modern-page .entry-content .tej-faq-block {
    padding: 0;
}

body.tej-modern-page .entry-content .tej-faq-item {
    margin-top: 14px;
    padding: 20px;
    border: 1px solid var(--tej-line);
    border-radius: 8px;
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-faq-item:first-of-type {
    margin-top: 0;
    padding-top: 20px;
    border-top: 1px solid var(--tej-line);
}

/* Fase 30: FAQ aprobada para ejemplos de convocatoria. */
body.tej-modern-page .entry-content .tej-faq-section {
    padding: 0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-faq-section__title {
    margin: 0 0 22px;
    padding-top: 0;
    color: #0D2B45;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: clamp(1.72rem, 2.7vw, 2.2rem);
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.15;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-faq-section__title::before {
    display: block;
    width: 44px;
    height: 4px;
    margin: 0 0 14px;
    border-radius: 999px;
    background: #2563EB;
}

body.tej-modern-page .entry-content .tej-faq-list {
    display: grid;
    gap: 12px;
}

body.tej-modern-page .entry-content .tej-faq-section .tej-faq-item {
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid #E6ECF2;
    border-radius: 10px;
    background: #FFFFFF;
    box-shadow: none;
}

body.tej-modern-page .entry-content .tej-faq-section .tej-faq-item:first-of-type {
    margin-top: 0;
    padding-top: 0;
    border-top: 1px solid #E6ECF2;
}

body.tej-modern-page .entry-content .tej-faq-section > .tej-faq-item + .tej-faq-item {
    margin-top: 12px;
}

body.tej-modern-page .entry-content .tej-faq-section .tej-faq-item[open] {
    border-color: #E6ECF2;
    background: #EFF6FF;
}

body.tej-modern-page .entry-content .tej-faq-item__summary {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    min-height: 66px;
    gap: 14px;
    padding: 17px 18px;
    color: #0D2B45;
    cursor: pointer;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-faq-item__summary::-webkit-details-marker {
    display: none;
}

body.tej-modern-page .entry-content .tej-faq-item__summary > br {
    display: none;
}

body.tej-modern-page .entry-content .tej-faq-item__summary:focus-visible {
    outline: 3px solid #2563EB;
    outline-offset: -3px;
    border-radius: 8px;
    background: #EFF6FF;
    box-shadow: inset 0 0 0 2px #2563EB;
}

body.tej-modern-page .entry-content .tej-faq-item__state-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid #2563EB;
    border-radius: 50%;
    background: #FFFFFF;
    color: #2563EB;
    flex: 0 0 auto;
    grid-column: 1;
    grid-row: 1;
}

body.tej-modern-page .entry-content .tej-faq-item__state-icon::before {
    content: "+";
    font-size: 20px;
    font-weight: 600;
    line-height: 1;
}

body.tej-modern-page .entry-content .tej-faq-item[open] .tej-faq-item__state-icon {
    border-color: #2563EB;
    background: #2563EB;
    color: #FFFFFF;
}

body.tej-modern-page .entry-content .tej-faq-item[open] .tej-faq-item__state-icon::before {
    content: "-";
    transform: translateY(-1px);
}

body.tej-modern-page .entry-content .tej-faq-item__question {
    min-width: 0;
    color: #0D2B45;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.35;
    grid-column: 2;
    grid-row: 1;
}

body.tej-modern-page .entry-content .tej-faq-item__chevron {
    width: 11px;
    height: 11px;
    border-right: 2px solid #2563EB;
    border-bottom: 2px solid #2563EB;
    transform: rotate(45deg);
    transform-origin: 50% 50%;
    grid-column: 3;
    grid-row: 1;
}

body.tej-modern-page .entry-content .tej-faq-item[open] .tej-faq-item__chevron {
    transform: rotate(225deg);
}

body.tej-modern-page .entry-content .tej-faq-item[open] .tej-faq-item__summary {
    border-bottom: 1px solid #E6ECF2;
}

body.tej-modern-page .entry-content .tej-faq-item__answer {
    padding: 18px 44px 22px 62px;
    color: #334155;
    font-size: 16.5px;
    line-height: 1.7;
}

body.tej-modern-page .entry-content .tej-faq-item__answer p {
    margin: 0 0 12px;
}

body.tej-modern-page .entry-content .tej-faq-item__answer p:last-child {
    margin-bottom: 0;
}

/* Fase 31: modulos editoriales expandibles de la pagina piloto. */
body.tej-modern-page .entry-content .tej-key-content {
    margin-top: 56px;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.tej-modern-page .entry-content .tej-key-content__accent {
    width: 54px;
    height: 4px;
    margin-bottom: 12px;
    border-radius: 999px;
    background: #2563EB;
}

body.tej-modern-page .entry-content .tej-key-content__title {
    margin: 0 0 22px;
    color: #0D2B45;
    font-size: clamp(1.72rem, 2.7vw, 2.2rem);
    font-weight: 800;
    line-height: 1.15;
}

body.tej-modern-page .entry-content .tej-editorial-modules {
    display: grid;
    gap: 12px;
}

body.tej-modern-page .entry-content .tej-editorial-module {
    --tej-module-color: #2563EB;
    --tej-module-soft: #EFF6FF;
    overflow: hidden;
    border: 1px solid #E6ECF2;
    border-radius: 10px;
    background: #FFFFFF;
}

body.tej-modern-page .entry-content .tej-editorial-module--steps {
    --tej-module-color: #2563EB;
    --tej-module-soft: #EFF6FF;
    border-color: rgba(37, 99, 235, 0.34);
    background: linear-gradient(180deg, #FFFFFF 0%, #EFF6FF 100%);
}

body.tej-modern-page .entry-content .tej-editorial-module--comparison {
    --tej-module-color: #1E7A46;
    --tej-module-soft: #F0FDF4;
    border-color: rgba(30, 122, 70, 0.28);
    background: linear-gradient(180deg, #FFFFFF 0%, #F0FDF4 100%);
}

body.tej-modern-page .entry-content .tej-editorial-module--errors {
    --tej-module-color: #D97706;
    --tej-module-soft: #FFF7E8;
    border-color: rgba(217, 119, 6, 0.32);
    background: linear-gradient(180deg, #FFFFFF 0%, #FFF7E8 100%);
}

body.tej-modern-page .entry-content .tej-editorial-module__summary {
    display: grid;
    grid-template-columns: 66px minmax(0, 1fr) auto;
    align-items: center;
    gap: 20px;
    padding: 18px 24px;
    cursor: pointer;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary::-webkit-details-marker,
body.tej-modern-page .entry-content .tej-editorial-module__summary > br {
    display: none;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary > p {
    margin: 0;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary > p:empty {
    display: none;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__icon) {
    grid-column: 1;
    grid-row: 1 / span 3;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__label) {
    grid-column: 2;
    grid-row: 1;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary > h2.tej-editorial-module__title {
    grid-column: 2;
    grid-row: 2;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__description) {
    grid-column: 2;
    grid-row: 3;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__action-open),
body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__action-close) {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    margin-right: 22px;
    color: var(--tej-module-color);
    font-size: 0.9rem;
    font-weight: 700;
    white-space: nowrap;
    grid-column: 3;
    grid-row: 1 / span 3;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__chevron) {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    grid-column: 3;
    grid-row: 1 / span 3;
}

body.tej-modern-page .entry-content .tej-editorial-module__summary:focus-visible {
    outline: 3px solid rgba(37, 99, 235, 0.34);
    outline-offset: -3px;
    border-radius: 8px;
    box-shadow: inset 0 0 0 2px var(--tej-module-color);
}

body.tej-modern-page .entry-content .tej-editorial-module__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--tej-module-soft);
    color: var(--tej-module-color);
    grid-column: 1;
    grid-row: 1;
}

body.tej-modern-page .entry-content .tej-editorial-module__icon svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-editorial-module__intro {
    display: grid;
    gap: 6px;
    min-width: 0;
    grid-column: 2;
    grid-row: 1;
}

body.tej-modern-page .entry-content .tej-editorial-module__label {
    justify-self: start;
    padding: 3px 10px;
    border-radius: 999px;
    background: var(--tej-module-soft);
    color: var(--tej-module-color);
    font-size: 0.74rem;
    font-weight: 700;
    line-height: 1.25;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-editorial-module__title {
    margin: 0;
    padding-top: 0;
    color: #0D2B45;
    font-size: clamp(1.05rem, 1.8vw, 1.32rem);
    font-weight: 700;
    line-height: 1.24;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-editorial-module__title::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-editorial-module__description {
    max-width: 680px;
    color: #334155;
    font-size: 0.98rem;
    line-height: 1.5;
}

body.tej-modern-page .entry-content .tej-editorial-module__action {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    color: var(--tej-module-color);
    font-size: 0.9rem;
    font-weight: 700;
    white-space: nowrap;
    grid-column: 3;
    grid-row: 1;
}

body.tej-modern-page .entry-content .tej-editorial-module__action-close {
    display: none;
}

body.tej-modern-page .entry-content .tej-editorial-module[open] .tej-editorial-module__action-open {
    display: none;
}

body.tej-modern-page .entry-content .tej-editorial-module[open] .tej-editorial-module__action-close {
    display: inline;
}

body.tej-modern-page .entry-content .tej-editorial-module__chevron {
    width: 11px;
    height: 11px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transform-origin: 50% 50%;
}

body.tej-modern-page .entry-content .tej-editorial-module[open] .tej-editorial-module__chevron {
    transform: rotate(225deg);
}

body.tej-modern-page .entry-content .tej-editorial-module[open] .tej-editorial-module__summary {
    border-bottom: 1px solid rgba(230, 236, 242, 0.95);
}

body.tej-modern-page .entry-content .tej-editorial-module__content {
    padding: 22px 28px 30px 110px;
    color: #334155;
    font-size: 1rem;
    line-height: 1.68;
}

body.tej-modern-page .entry-content .tej-editorial-module__content p {
    margin: 0 0 1rem;
}

body.tej-modern-page .entry-content .tej-editorial-module__content p:last-child,
body.tej-modern-page .entry-content .tej-editorial-module__content ol:last-child,
body.tej-modern-page .entry-content .tej-editorial-module__content ul:last-child {
    margin-bottom: 0;
}

body.tej-modern-page .entry-content .tej-editorial-module--steps .tej-editorial-module__content ol {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px 28px;
    margin: 0;
    padding: 0;
    counter-reset: tej-module-steps;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-editorial-module--steps .tej-editorial-module__content li {
    position: relative;
    min-width: 0;
    margin: 0;
    padding: 0 14px 0 40px;
    color: #334155;
    font-size: 0.96rem;
    line-height: 1.6;
}

body.tej-modern-page .entry-content .tej-editorial-module--steps .tej-editorial-module__content li::before {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #2563EB;
    color: #FFFFFF;
    content: counter(tej-module-steps);
    counter-increment: tej-module-steps;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1;
}

body.tej-modern-page .entry-content .tej-editorial-module--comparison .tej-table-wrap {
    max-width: 100%;
    overflow-x: auto;
}

body.tej-modern-page .entry-content .tej-editorial-module--comparison table {
    min-width: 640px;
}

body.tej-modern-page .entry-content .tej-editorial-module--errors .tej-editorial-module__content ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 22px;
    margin: 0;
    padding-left: 22px;
}

body.tej-modern-page .entry-content .tej-editorial-module--errors .tej-editorial-module__content li {
    margin: 0;
}

@media screen and (max-width: 1023px) {
    body.tej-modern-page .entry-content .tej-editorial-module__summary {
        grid-template-columns: 58px minmax(0, 1fr) auto;
        gap: 16px;
        padding: 17px 20px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__icon {
        width: 46px;
        height: 46px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__icon svg {
        width: 30px;
        height: 30px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__content {
        padding: 20px 22px 26px 94px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module--steps .tej-editorial-module__content ol {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px 24px;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-key-content {
        margin-top: 42px;
    }

    body.tej-modern-page .entry-content .tej-key-content__title {
        margin-bottom: 18px;
        font-size: clamp(1.46rem, 6vw, 1.85rem);
        line-height: 1.18;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__summary {
        grid-template-columns: 42px minmax(0, 1fr);
        align-items: start;
        gap: 12px;
        padding: 15px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__icon {
        width: 36px;
        height: 36px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__icon svg {
        width: 24px;
        height: 24px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__intro {
        gap: 5px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__label {
        padding: 3px 8px;
        font-size: 0.66rem;
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-editorial-module__title {
        font-size: 1rem;
        line-height: 1.28;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__description {
        font-size: 0.88rem;
        line-height: 1.48;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__action {
        justify-content: flex-start;
        gap: 8px;
        margin-top: 5px;
        font-size: 0.78rem;
        white-space: normal;
        grid-column: 2;
        grid-row: 2;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__icon) {
        grid-column: 1;
        grid-row: 1 / span 3;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__label) {
        grid-column: 2;
        grid-row: 1;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__summary > h2.tej-editorial-module__title {
        grid-column: 2;
        grid-row: 2;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__description) {
        grid-column: 2;
        grid-row: 3;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__action-open),
    body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__action-close) {
        justify-content: flex-start;
        margin-top: 5px;
        margin-right: 24px;
        font-size: 0.78rem;
        white-space: normal;
        grid-column: 2;
        grid-row: 4;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__summary > p:has(.tej-editorial-module__chevron) {
        justify-content: flex-end;
        grid-column: 2;
        grid-row: 4;
    }

    body.tej-modern-page .entry-content .tej-editorial-module__content {
        padding: 18px 16px 20px;
        font-size: 0.96rem;
        line-height: 1.62;
    }

    body.tej-modern-page .entry-content .tej-editorial-module--steps .tej-editorial-module__content ol,
    body.tej-modern-page .entry-content .tej-editorial-module--errors .tej-editorial-module__content ul {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    body.tej-modern-page .entry-content .tej-editorial-module--comparison table {
        min-width: 620px;
    }
}

@media screen and (max-width: 768px) {
    body.tej-modern-page #primary {
        max-width: 100%;
    }

    body.tej-modern-page.separate-containers .inside-article,
    body.tej-modern-page .inside-article {
        padding: 28px 18px 40px;
        border-radius: 8px;
    }

    body.tej-modern-page .entry-header {
        padding: 26px 22px;
    }

    body.tej-modern-page .entry-content .tej-visual-index ul {
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 430px) {
    body.tej-modern-page.separate-containers .inside-article,
    body.tej-modern-page .inside-article {
        padding: 22px 12px 34px;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }

    body.tej-modern-page .entry-header,
    body.tej-modern-page .entry-content .tej-article-intro,
    body.tej-modern-page .entry-content .tej-visual-index {
        padding: 20px 16px;
    }

    body.tej-modern-page .entry-title {
        font-size: 2rem;
    }

    body.tej-modern-page .entry-content .tej-visual-index li {
        min-height: 42px;
        padding-right: 10px;
    }
}

/* Fase 7C: pulido fino de H1 y botones de copiar */
body.tej-modern-page {
    --tej-title-navy: #102f45;
}

body.tej-modern-page .entry-title {
    color: var(--tej-title-navy);
    font-weight: 700;
}

/* Fase 19: H1 visual dividido con contenido semantico en WordPress. */
body.tej-modern-page.tej-has-split-title .entry-header::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-title.tej-page-title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    max-width: 720px;
    margin: 0;
    padding: 0;
    color: var(--tej-title-navy);
    font-size: inherit;
    font-weight: 700;
    line-height: 1;
}

body.tej-modern-page .tej-page-title__prefix {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 28px;
    padding: 6px 10px;
    border: 1px solid rgba(37, 113, 93, 0.22);
    border-radius: 999px;
    background: var(--tej-green-soft);
    color: var(--tej-green);
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
}

body.tej-modern-page .tej-page-title__topic {
    display: block;
    color: var(--tej-title-navy);
    font-size: clamp(2.05rem, 4vw, 3.1rem);
    font-weight: 800;
    line-height: 1.08;
}

/* Solo normaliza el primer caracter del segundo fragmento del H1 moderno. */
body.tej-modern-page .tej-page-title__topic::first-letter {
    text-transform: uppercase;
}

body.tej-modern-page .entry-content .tej-copyable {
    position: relative;
}

body.tej-modern-page .entry-content .tej-copyable > h2,
body.tej-modern-page .entry-content .tej-copyable > h3 {
    padding-right: 150px;
}

body.tej-modern-page .entry-content .tej-copy-button {
    position: absolute;
    top: 16px;
    right: 18px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    max-width: calc(100% - 36px);
    padding: 7px 12px;
    border: 1px solid rgba(16, 47, 69, 0.22);
    border-radius: 999px;
    background: #ffffff;
    color: var(--tej-title-navy);
    font-size: 0.82rem;
    font-weight: 750;
    letter-spacing: 0;
    line-height: 1.1;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(23, 33, 43, 0.06);
    cursor: pointer;
}

body.tej-modern-page .entry-content .tej-copy-button:hover {
    border-color: rgba(37, 113, 93, 0.36);
    background: var(--tej-green-soft);
    color: var(--tej-green);
}

body.tej-modern-page .entry-content .tej-copy-button:focus,
body.tej-modern-page .entry-content .tej-copy-button:focus-visible {
    outline: 3px solid rgba(37, 113, 93, 0.28);
    outline-offset: 3px;
}

body.tej-modern-page .entry-content .tej-copy-button.is-copied {
    border-color: rgba(37, 113, 93, 0.42);
    background: var(--tej-green-soft);
    color: var(--tej-green);
}

/* Acciones de copia: mismo peso visual y contraste que el CTA del hero. */
body.tej-modern-page .entry-content .tej-copy-button {
    border-color: #0d68d8;
    background: #0d68d8;
    color: #ffffff;
    box-shadow: 0 5px 14px rgba(13, 104, 216, 0.2);
}

body.tej-modern-page .entry-content .tej-copy-button:hover {
    border-color: #084f9f;
    background: #084f9f;
    color: #ffffff;
}

body.tej-modern-page .entry-content .tej-copy-button:focus,
body.tej-modern-page .entry-content .tej-copy-button:focus-visible {
    outline-color: #77b9ff;
}

body.tej-modern-page .entry-content .tej-copy-button.is-copied {
    border-color: #084f9f;
    background: #084f9f;
    color: #ffffff;
}

@media screen and (max-width: 430px) {
    body.tej-modern-page .entry-title.tej-page-title {
        gap: 8px;
    }

    body.tej-modern-page .tej-page-title__prefix {
        min-height: 26px;
        padding: 5px 9px;
        font-size: 0.74rem;
    }

    body.tej-modern-page .tej-page-title__topic {
        font-size: 2rem;
    }

    body.tej-modern-page .entry-content .tej-copyable > h2,
    body.tej-modern-page .entry-content .tej-copyable > h3 {
        padding-right: 0;
    }

    body.tej-modern-page .entry-content .tej-copy-button {
        position: static;
        width: max-content;
        margin: 0 0 14px auto;
        padding: 7px 11px;
        font-size: 0.8rem;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-important-note {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 18px;
        padding: 22px 20px;
    }

    body.tej-modern-page .entry-content .tej-important-note__icon {
        width: 62px;
        height: 62px;
        margin: 0 auto;
    }

    body.tej-modern-page .entry-content .tej-important-note__icon svg {
        width: 38px;
        height: 38px;
    }

    body.tej-modern-page .entry-content .tej-important-note__separator {
        display: none;
    }
}

/* Fase 29: tarjetas visuales aprobadas para los ejemplos de convocatoria. */
body.tej-modern-page .entry-content .tej-examples-section > h2 {
    position: relative;
    margin-bottom: 18px;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-weight: 800;
    letter-spacing: 0;
}

body.tej-modern-page .entry-content .tej-examples-section > h2::before {
    content: "";
    display: block;
    width: 44px;
    height: 4px;
    margin-bottom: 10px;
    border-radius: 999px;
    background: #2563eb;
}

body.tej-modern-page .entry-content .tej-examples-grid {
    gap: 22px;
}

body.tej-modern-page .entry-content .tej-example-card {
    position: relative;
    overflow: hidden;
    padding: 0;
    border: 1px solid #dbe5ef;
    border-left: 5px solid #2563eb;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: none;
}

body.tej-modern-page .entry-content .tej-example-card::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-example-card__header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    border-bottom: 1px solid #dbe5ef;
    background: #f8fbff;
}

body.tej-modern-page .entry-content .tej-example-card__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: #2563eb;
    color: #ffffff;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 0.9rem;
    font-weight: 800;
    line-height: 1;
}

body.tej-modern-page .entry-content .tej-example-card h3.tej-example-card__title {
    margin: 0;
    padding: 0;
    border: 0;
    color: #0d2b45;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: clamp(1rem, 1.5vw, 1.12rem);
    font-weight: 750;
    line-height: 1.25;
}

body.tej-modern-page .entry-content .tej-example-card__copy.tej-copy-button {
    position: static;
    top: auto;
    right: auto;
    flex-shrink: 0;
    min-width: 138px;
    min-height: 38px;
    margin: 0;
    padding: 8px 14px;
    gap: 7px;
    border-color: #b9cff8;
    border-radius: 999px;
    background: #ffffff;
    color: #0d4fb8;
    box-shadow: none;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 0.84rem;
    font-weight: 700;
    white-space: nowrap;
}

body.tej-modern-page .entry-content .tej-example-card__copy.tej-copy-button:hover {
    border-color: #2563eb;
    background: #eff6ff;
    color: #0d4fb8;
}

body.tej-modern-page .entry-content .tej-example-card__copy.tej-copy-button:focus,
body.tej-modern-page .entry-content .tej-example-card__copy.tej-copy-button:focus-visible {
    outline: 3px solid rgba(37, 99, 235, 0.28);
    outline-offset: 3px;
}

body.tej-modern-page .entry-content .tej-example-card__copy.tej-copy-button.is-copied {
    border-color: #2563eb;
    background: #eff6ff;
    color: #0d4fb8;
}

/* Fase 32: plantilla breve de convocatoria aprobada. */
body.tej-modern-page .entry-content .tej-template-guide {
    display: grid;
    gap: 18px;
    margin-top: 56px;
    padding: 18px 22px 20px;
    overflow: hidden;
    border: 1px solid #D6E9DE;
    border-left: 5px solid #1E7A46;
    border-radius: 12px;
    background: #F0FDF4;
    box-shadow: 0 2px 8px rgba(23, 33, 43, 0.035);
    color: #334155;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.tej-modern-page .entry-content .tej-template-guide__header {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    padding: 0 0 18px;
    border-bottom: 1px dashed rgba(30, 122, 70, 0.28);
}

body.tej-modern-page .entry-content .tej-template-guide__icon,
body.tej-modern-page .entry-content .tej-template-guide__part-icon,
body.tej-modern-page .entry-content .tej-template-guide__template-toggle-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 50%;
    background: rgba(30, 122, 70, 0.1);
    color: #1E7A46;
}

body.tej-modern-page .entry-content .tej-template-guide__icon {
    width: 50px;
    height: 50px;
}

body.tej-modern-page .entry-content .tej-template-guide__icon svg {
    width: 30px;
    height: 30px;
}

body.tej-modern-page .entry-content .tej-template-guide svg {
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-template-guide__heading {
    min-width: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-template-guide__title {
    margin: 0 0 5px;
    padding: 0;
    color: #0D2B45;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: clamp(1.45rem, 2.25vw, 2rem);
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.12;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-template-guide__title::before {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-template-guide__description {
    margin: 0;
    color: #334155;
    font-size: 14.5px;
    line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-template-guide__copy.tej-copy-button {
    position: static;
    top: auto;
    right: auto;
    gap: 8px;
    min-width: 148px;
    min-height: 38px;
    margin: 0;
    padding: 8px 14px;
    border-color: rgba(30, 122, 70, 0.38);
    border-radius: 8px;
    background: #FFFFFF;
    color: #1E7A46;
    box-shadow: none;
    font-size: 0.86rem;
    font-weight: 750;
    white-space: nowrap;
}

body.tej-modern-page .entry-content .tej-template-guide__copy.tej-copy-button:hover,
body.tej-modern-page .entry-content .tej-template-guide__copy.tej-copy-button.is-copied {
    border-color: #1E7A46;
    background: #F0FDF4;
    color: #1E7A46;
}

body.tej-modern-page .entry-content .tej-template-guide__copy.tej-copy-button:focus,
body.tej-modern-page .entry-content .tej-template-guide__copy.tej-copy-button:focus-visible,
body.tej-modern-page .entry-content .tej-template-guide summary:focus-visible {
    outline: 3px solid rgba(30, 122, 70, 0.3);
    outline-offset: 3px;
}

body.tej-modern-page .entry-content .tej-template-guide__layout {
    display: grid;
    grid-template-columns: minmax(250px, 280px) minmax(0, 1fr);
    gap: 22px;
    align-items: start;
}

body.tej-modern-page .entry-content .tej-template-guide__parts {
    position: relative;
    display: grid;
    gap: 12px;
    padding-right: 22px;
    border-right: 1px solid #D6E9DE;
}

body.tej-modern-page .entry-content .tej-template-guide__part {
    position: relative;
}

body.tej-modern-page .entry-content .tej-template-guide__part:not(:last-child)::after {
    display: none;
    content: none;
}

body.tej-modern-page .entry-content .tej-template-guide__part-summary {
    display: grid;
    grid-template-columns: 34px auto minmax(0, 1fr) 10px;
    align-items: center;
    gap: 8px;
    color: #0D2B45;
    cursor: default;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-template-guide__part-summary::-webkit-details-marker,
body.tej-modern-page .entry-content .tej-template-guide__template-toggle::-webkit-details-marker {
    display: none;
}

body.tej-modern-page .entry-content .tej-template-guide__part-icon {
    position: relative;
    z-index: 1;
    width: 32px;
    height: 32px;
}

body.tej-modern-page .entry-content .tej-template-guide__part-icon svg {
    width: 20px;
    height: 20px;
}

body.tej-modern-page .entry-content .tej-template-guide__part-number,
body.tej-modern-page .entry-content .tej-template-guide__part-title {
    font-size: 14.5px;
    font-weight: 800;
    line-height: 1.25;
}

body.tej-modern-page .entry-content .tej-template-guide__part-description {
    margin: 4px 0 0 42px;
    color: #334155;
    font-size: 13.5px;
    line-height: 1.45;
}

body.tej-modern-page .entry-content .tej-template-guide__part-chevron,
body.tej-modern-page .entry-content .tej-template-guide__template-chevron {
    display: none;
    width: 9px;
    height: 9px;
    border-right: 2px solid #1E7A46;
    border-bottom: 2px solid #1E7A46;
    transform: rotate(45deg);
}

body.tej-modern-page .entry-content .tej-template-guide__template {
    min-width: 0;
}

body.tej-modern-page .entry-content .tej-template-guide__template-toggle {
    display: none;
}

body.tej-modern-page .entry-content .tej-template-guide__template-copy {
    padding: 0;
    color: #0F172A;
    font-size: 16.5px;
    line-height: 1.7;
}

body.tej-modern-page .entry-content .tej-template-guide__template-copy p {
    margin: 0 0 1rem;
}

body.tej-modern-page .entry-content .tej-template-guide__template-copy ul {
    margin: 0 0 1rem 1.25rem;
    padding: 0;
}

body.tej-modern-page .entry-content .tej-template-guide__template-copy li {
    margin-top: 0.34rem;
}

body.tej-modern-page .entry-content .tej-template-guide__placeholder {
    color: #1E7A46;
    font-weight: 650;
}

body.tej-modern-page .entry-content .tej-template-guide__tip {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid #D6E9DE;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.64);
    color: #334155;
    font-size: 14px;
    line-height: 1.45;
}

body.tej-modern-page .entry-content .tej-template-guide__tip-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    border: 1px solid #1E7A46;
    border-radius: 50%;
    color: #1E7A46;
    font-size: 13px;
    font-weight: 800;
    line-height: 1;
}

body.tej-modern-page .entry-content .tej-template-guide__tip p {
    margin: 0;
}

@media screen and (max-width: 1023px) {
    body.tej-modern-page .entry-content .tej-template-guide {
        padding: 16px 18px 18px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__layout {
        grid-template-columns: minmax(218px, 250px) minmax(0, 1fr);
        gap: 18px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__parts {
        padding-right: 16px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__template-copy {
        font-size: 15.5px;
        line-height: 1.68;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-template-guide {
        gap: 14px;
        margin-top: 42px;
        padding: 14px 12px 16px;
        border-radius: 10px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__header {
        grid-template-columns: 42px minmax(0, 1fr) 44px;
        gap: 10px;
        padding-bottom: 13px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__icon {
        width: 38px;
        height: 38px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__icon svg {
        width: 24px;
        height: 24px;
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-template-guide__title {
        margin-bottom: 4px;
        font-size: clamp(1.34rem, 7vw, 1.62rem);
        line-height: 1.08;
    }

    body.tej-modern-page .entry-content .tej-template-guide__description {
        font-size: 12.8px;
        line-height: 1.32;
    }

    body.tej-modern-page .entry-content .tej-template-guide__copy.tej-copy-button {
        width: 44px;
        min-width: 44px;
        height: 44px;
        min-height: 44px;
        padding: 0;
        border-radius: 8px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__copy .tej-copy-button__text {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }

    body.tej-modern-page .entry-content .tej-template-guide__copy.tej-copy-button.is-copied {
        font-size: 0;
    }

    body.tej-modern-page .entry-content .tej-template-guide__copy.tej-copy-button.is-copied::before {
        content: "\2713";
        font-size: 18px;
        font-weight: 800;
        line-height: 1;
    }

    body.tej-modern-page .entry-content .tej-template-guide__layout {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__parts {
        gap: 0;
        padding-right: 0;
        border-right: 0;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part {
        border-bottom: 1px solid #D6E9DE;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part:not(:last-child)::after {
        display: none;
        content: none;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part-summary {
        grid-template-columns: 30px auto minmax(0, 1fr) 10px;
        gap: 8px;
        padding: 9px 0;
        cursor: pointer;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part-icon {
        width: 28px;
        height: 28px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part-icon svg {
        width: 18px;
        height: 18px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part-number,
    body.tej-modern-page .entry-content .tej-template-guide__part-title {
        font-size: 13.2px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part-description {
        margin: 0 0 10px 38px;
        font-size: 12.8px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part-chevron,
    body.tej-modern-page .entry-content .tej-template-guide__template-chevron {
        display: inline-block;
    }

    body.tej-modern-page .entry-content .tej-template-guide__part[open] .tej-template-guide__part-chevron,
    body.tej-modern-page .entry-content .tej-template-guide__template[open] .tej-template-guide__template-chevron {
        transform: rotate(225deg);
    }

    body.tej-modern-page .entry-content .tej-template-guide__template {
        border: 1px solid rgba(30, 122, 70, 0.42);
        border-radius: 8px;
        background: #FFFFFF;
    }

    body.tej-modern-page .entry-content .tej-template-guide__template-toggle {
        display: grid;
        grid-template-columns: 28px minmax(0, 1fr) 10px;
        align-items: center;
        gap: 9px;
        min-height: 42px;
        padding: 9px 11px;
        color: #1E7A46;
        cursor: pointer;
        font-size: 13.2px;
        font-weight: 800;
        line-height: 1.2;
        list-style: none;
    }

    body.tej-modern-page .entry-content .tej-template-guide__template-toggle-icon {
        width: 24px;
        height: 24px;
        background: transparent;
    }

    body.tej-modern-page .entry-content .tej-template-guide__template-toggle-icon svg {
        width: 18px;
        height: 18px;
    }

    body.tej-modern-page .entry-content .tej-template-guide__template-toggle-close {
        display: none;
    }

    body.tej-modern-page .entry-content .tej-template-guide__template[open] .tej-template-guide__template-toggle-open {
        display: none;
    }

    body.tej-modern-page .entry-content .tej-template-guide__template[open] .tej-template-guide__template-toggle-close {
        display: inline;
    }

    body.tej-modern-page .entry-content .tej-template-guide__template-copy {
        padding: 13px 12px 15px;
        border-top: 1px solid #D6E9DE;
        font-size: 15.2px;
        line-height: 1.65;
    }

    body.tej-modern-page .entry-content .tej-template-guide__tip {
        padding: 10px;
        font-size: 12.8px;
    }
}

body.tej-modern-page .entry-content .tej-copy-button__icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
}

body.tej-modern-page .entry-content .tej-example-card__copy .tej-copy-button__text {
    flex: 0 0 auto;
}

body.tej-modern-page .entry-content .tej-copy-button__icon svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.9;
}

body.tej-modern-page .entry-content .tej-example-card__body {
    padding: 20px 22px 22px;
    color: #233447;
    font-size: 1rem;
    line-height: 1.68;
}

body.tej-modern-page .entry-content .tej-example-card__body p {
    margin: 0 0 14px;
}

body.tej-modern-page .entry-content .tej-example-card__body p:first-child strong {
    color: #0d2b45;
    font-weight: 800;
}

body.tej-modern-page .entry-content .tej-example-card__body ul {
    column-count: 2;
    column-gap: 34px;
    margin: 16px 0 18px;
    padding-left: 22px;
}

body.tej-modern-page .entry-content .tej-example-card__body li {
    break-inside: avoid;
    margin: 0 0 8px;
    padding-left: 2px;
}

body.tej-modern-page .entry-content .tej-example-card__body li::marker {
    color: #2563eb;
}

@media screen and (max-width: 768px) {
    body.tej-modern-page .entry-content .tej-example-card__header {
        padding: 15px 16px;
    }

    body.tej-modern-page .entry-content .tej-example-card__body {
        padding: 18px 18px 20px;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-example-card__header {
        grid-template-columns: auto minmax(0, 1fr) 44px;
        gap: 10px;
        padding: 14px;
    }

    body.tej-modern-page .entry-content .tej-example-card__number {
        width: 28px;
        height: 28px;
        font-size: 0.84rem;
    }

    body.tej-modern-page .entry-content .tej-example-card h3.tej-example-card__title {
        font-size: 0.98rem;
        line-height: 1.22;
    }

    body.tej-modern-page .entry-content .tej-example-card__copy.tej-copy-button {
        width: 44px;
        min-width: 44px;
        height: 44px;
        min-height: 44px;
        padding: 0;
        border-radius: 8px;
    }

    body.tej-modern-page .entry-content .tej-example-card__copy .tej-copy-button__text {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }

    body.tej-modern-page .entry-content .tej-example-card__body {
        padding: 17px 16px 19px;
        font-size: 0.96rem;
        line-height: 1.6;
    }

    body.tej-modern-page .entry-content .tej-example-card__body ul {
        column-count: 1;
        margin-top: 14px;
    }
}

@media screen and (max-width: 768px) {
    body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-faq-section__title {
        margin-bottom: 20px;
        font-size: clamp(1.52rem, 6vw, 1.9rem);
        line-height: 1.18;
    }

    body.tej-modern-page .entry-content .tej-faq-list {
        gap: 10px;
    }

    body.tej-modern-page .entry-content .tej-faq-section > .tej-faq-item + .tej-faq-item {
        margin-top: 10px;
    }

    body.tej-modern-page .entry-content .tej-faq-item__summary {
        min-height: 60px;
        gap: 12px;
        padding: 15px 16px;
    }

    body.tej-modern-page .entry-content .tej-faq-item__question {
        font-size: 16px;
        line-height: 1.34;
    }

    body.tej-modern-page .entry-content .tej-faq-item__answer {
        padding: 16px 18px 18px 58px;
        font-size: 15.8px;
        line-height: 1.65;
    }
}

@media screen and (max-width: 430px) {
    body.tej-modern-page .entry-content .tej-faq-section .tej-faq-item {
        border-radius: 9px;
    }

    body.tej-modern-page .entry-content .tej-faq-item__summary {
        grid-template-columns: 28px minmax(0, 1fr) 12px;
        gap: 10px;
        padding: 14px;
    }

    body.tej-modern-page .entry-content .tej-faq-item__state-icon {
        width: 28px;
        height: 28px;
    }

    body.tej-modern-page .entry-content .tej-faq-item__state-icon::before {
        font-size: 18px;
    }

    body.tej-modern-page .entry-content .tej-faq-item__answer {
        padding: 15px 14px 17px 52px;
    }
}

/* Fase 40: componentes reutilizables para contenidos de Lengua. */
body.tej-modern-page .entry-content .tej-language-note {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 14px;
    width: 100%;
    margin: 0 0 56px;
    padding: 20px 22px;
    border: 1px solid #e4b84f;
    border-radius: 8px;
    background: #fffaf0;
    color: #253548;
}

body.tej-modern-page .entry-content .tej-language-note__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin-top: 1px;
    border-radius: 50%;
    background: #fff1c9;
    color: #b77800;
}

body.tej-modern-page .entry-content .tej-language-note__icon svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-language-note__content {
    min-width: 0;
}

/* Notes without an icon should not occupy the icon column. */
body.tej-modern-page .entry-content .tej-language-note > .tej-language-note__content:only-child {
    grid-column: 1 / -1;
}

body.tej-modern-page .entry-content .tej-language-note p.tej-language-note__title {
    margin: 0 0 5px;
    color: #0d2b45;
    font-size: 0.96rem;
    font-weight: 800;
    line-height: 1.3;
}

body.tej-modern-page .entry-content .tej-language-note p.tej-language-note__text {
    margin: 0;
    font-size: 0.96rem;
    line-height: 1.6;
}

body.tej-modern-page .entry-content .tej-word-bank {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 20px 0 0;
}

body.tej-modern-page .entry-content .tej-word-bank__group {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 0 16px 16px;
    overflow: hidden;
    border: 1px solid #d9e3ee;
    border-radius: 8px;
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-word-bank__header {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 -16px 13px;
    padding: 13px 16px;
    border-bottom: 1px solid #e6edf4;
    background: #f7faff;
}

body.tej-modern-page .entry-content .tej-word-bank__indicator {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border: 2px solid #2563eb;
    border-radius: 50%;
    background: #dbeafe;
}

body.tej-modern-page .entry-content .tej-word-bank h4.tej-word-bank__title {
    min-width: 0;
    margin: 0;
    color: #0d2b45;
    font-size: 0.94rem;
    font-weight: 800;
    line-height: 1.3;
}

body.tej-modern-page .entry-content .tej-word-bank ul.tej-word-bank__words {
    display: grid;
    gap: 5px;
    margin: 0 0 16px;
    padding: 0;
    list-style: none;
    color: #27384a;
    font-size: 0.91rem;
    line-height: 1.45;
}

body.tej-modern-page .entry-content .tej-word-bank__words li,
body.tej-modern-page .entry-content .tej-word-bank__words li + li {
    margin: 0;
}

body.tej-modern-page .entry-content .tej-word-bank__copy.tej-copy-button {
    position: static;
    width: max-content;
    max-width: 100%;
    min-height: 36px;
    margin: auto 0 0;
    padding: 8px 11px;
    border-radius: 7px;
    box-shadow: none;
    font-size: 0.78rem;
    white-space: nowrap;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-sentence-examples__list {
    margin: 20px 0 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid #d9e3ee;
    border-radius: 8px;
    background: #ffffff;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper li.tej-sentence-example,
body.tej-modern-page .entry-content .tej-modern-content-wrapper li.tej-sentence-example + li.tej-sentence-example {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-width: 0;
    margin: 0;
    padding: 13px 15px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper li.tej-sentence-example + li.tej-sentence-example {
    border-top: 1px solid #e6edf4;
}

body.tej-modern-page .entry-content .tej-sentence-example__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 27px;
    height: 27px;
    border-radius: 50%;
    background: #eaf2ff;
    color: #1d5fd1;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1;
}

body.tej-modern-page .entry-content .tej-sentence-example p.tej-sentence-example__text {
    min-width: 0;
    margin: 0;
    color: #27384a;
    font-size: 0.96rem;
    line-height: 1.5;
}

body.tej-modern-page .entry-content .tej-sentence-example__text strong {
    color: #0d2b45;
    font-weight: 800;
}

body.tej-modern-page .entry-content .tej-sentence-example__copy.tej-copy-button {
    position: static;
    min-width: 82px;
    max-width: 100%;
    min-height: 34px;
    margin: 0;
    padding: 7px 10px;
    border-radius: 7px;
    box-shadow: none;
    font-size: 0.76rem;
    white-space: nowrap;
}

body.tej-modern-page .entry-content .tej-practice-table table {
    table-layout: fixed;
    min-width: 600px;
}

body.tej-modern-page .entry-content .tej-practice-table th:nth-child(1) {
    width: 22%;
}

body.tej-modern-page .entry-content .tej-practice-table th:nth-child(2) {
    width: 27%;
}

body.tej-modern-page .entry-content .tej-practice-table th,
body.tej-modern-page .entry-content .tej-practice-table td {
    padding: 12px 13px;
}

body.tej-modern-page .entry-content .tej-practice-table__answer {
    font-weight: 800;
}

body.tej-modern-page .entry-content .tej-practice-table__answer--simple {
    background: #effaf3;
    color: #1e7a46;
}

body.tej-modern-page .entry-content .tej-practice-table__answer--compound {
    background: #fff4f2;
    color: #a43a2d;
}

@media screen and (max-width: 900px) {
    body.tej-modern-page .entry-content .tej-word-bank {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-language-note {
        grid-template-columns: 28px minmax(0, 1fr);
        gap: 11px;
        margin-bottom: 46px;
        padding: 17px 16px;
    }

    body.tej-modern-page .entry-content .tej-language-note__icon {
        width: 27px;
        height: 27px;
    }

    body.tej-modern-page .entry-content .tej-language-note__icon svg {
        width: 17px;
        height: 17px;
    }

    body.tej-modern-page .entry-content .tej-language-note p.tej-language-note__title,
    body.tej-modern-page .entry-content .tej-language-note p.tej-language-note__text {
        font-size: 0.92rem;
    }

    body.tej-modern-page .entry-content .tej-word-bank {
        grid-template-columns: 1fr;
        gap: 13px;
    }

    body.tej-modern-page .entry-content .tej-word-bank__copy.tej-copy-button {
        width: 100%;
        margin-top: auto;
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper li.tej-sentence-example,
    body.tej-modern-page .entry-content .tej-modern-content-wrapper li.tej-sentence-example + li.tej-sentence-example {
        grid-template-columns: 28px minmax(0, 1fr);
        gap: 9px 10px;
        padding: 13px 14px;
    }

    body.tej-modern-page .entry-content .tej-sentence-example__copy.tej-copy-button {
        width: max-content;
        min-width: 96px;
        margin: 1px 0 0;
        grid-column: 2;
    }

    body.tej-modern-page .entry-content .tej-practice-table table {
        min-width: 560px;
    }

    body.tej-modern-page .entry-content .tej-practice-table th,
    body.tej-modern-page .entry-content .tej-practice-table td {
        padding: 10px 11px;
        font-size: 0.88rem;
        line-height: 1.45;
    }
}

/* Fase 41: casos de uso definitivos para paginas de Lengua. */
body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-primary-examples__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 16px;
    margin: 22px 0 0;
    padding: 0;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-primary-examples--detailed ol.tej-primary-examples__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

/* Modos de presentacion explicitos: la densidad del contenido decide el layout. */
body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--compact-grid ol.tej-primary-examples__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--analysis-grid ol.tej-primary-examples__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--stacked-analysis ol.tej-primary-examples__grid,
body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--editorial-list ol.tej-primary-examples__grid {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--editorial-list ol.tej-primary-examples__grid {
    gap: 0;
    border-top: 1px solid #d9e3ee;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--editorial-list .tej-primary-example,
body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--editorial-list .tej-primary-example + .tej-primary-example {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 12px;
    padding: 18px 0;
    border: 0;
    border-bottom: 1px solid #d9e3ee;
    border-radius: 0;
    background: transparent;
}

body.tej-modern-page .entry-content .tej-primary-example,
body.tej-modern-page .entry-content .tej-primary-example + .tej-primary-example {
    display: flex;
    height: 100%;
    min-width: 0;
    flex-direction: column;
    gap: 10px;
    margin: 0;
    padding: 14px;
    border: 1px solid #d9e3ee;
    border-radius: 8px;
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-primary-example__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #2563eb;
    color: #ffffff;
    font-size: 0.8rem;
    font-weight: 800;
    line-height: 1;
}

body.tej-modern-page .entry-content .tej-primary-example__content {
    min-width: 0;
}

body.tej-modern-page .entry-content .tej-primary-example h3.tej-primary-example__word {
    margin: 0 0 5px;
    color: #0d2b45;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.25;
}

body.tej-modern-page .entry-content .tej-primary-example p.tej-primary-example__description {
    margin: 0;
    color: #526173;
    font-size: 0.92rem;
    line-height: 1.45;
}

/* Narraciones desarrolladas: lectura larga, apilada y con ritmo de párrafo. */
body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-examples__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    margin-top: 22px;
}

body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example {
    height: auto;
    padding: 24px;
}

body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example__content {
    width: min(100%, 76ch);
    margin-inline: auto;
}

body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example h3.tej-primary-example__word {
    margin-bottom: 16px;
    font-size: 1.12rem;
    line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example p.tej-developed-narrative__paragraph {
    margin: 0 0 16px;
    font-size: 1rem;
    line-height: 1.7;
}

body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example p.tej-developed-narrative__paragraph:last-of-type {
    margin-bottom: 0;
}

body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example p.tej-developed-narrative__analysis {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid #d9e3ee;
    font-size: 0.96rem;
    line-height: 1.65;
}

/* Poemas completos: lectura vertical, versos respirables y análisis subordinado. */
body.tej-modern-page .entry-content .tej-poem-examples ol.tej-primary-examples__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
}

body.tej-modern-page .entry-content .tej-poem-example,
body.tej-modern-page .entry-content .tej-poem-example + .tej-poem-example {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    align-items: start;
    gap: 14px 16px;
    height: auto;
    padding: 22px;
}

body.tej-modern-page .entry-content .tej-poem-example__content {
    min-width: 0;
}

body.tej-modern-page .entry-content .tej-poem-example__meta {
    display: inline-flex;
    margin: 0 0 14px;
    padding: 4px 9px;
    border-radius: 999px;
    background: #eaf2ff;
    color: #174ea6;
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.25;
}

body.tej-modern-page .entry-content .tej-poem-example__text {
    margin: 0;
    padding: 18px 20px;
    border-left: 3px solid #2563eb;
    background: #f7faff;
    color: #172b3d;
    font-size: 1.02rem;
    font-style: normal;
    line-height: 1.75;
}

body.tej-modern-page .entry-content .tej-poem-example__line {
    display: block;
    min-height: 1em;
}

body.tej-modern-page .entry-content .tej-poem-example__reading {
    margin: 16px 0 0;
    color: #526173;
    font-size: 0.94rem;
    line-height: 1.6;
}

@media (max-width: 767px) {
    body.tej-modern-page .entry-content .tej-poem-example,
    body.tej-modern-page .entry-content .tej-poem-example + .tej-poem-example {
        grid-template-columns: minmax(0, 1fr);
        gap: 10px;
        padding: 18px;
    }

    body.tej-modern-page .entry-content .tej-poem-example__text {
        padding: 15px 16px;
        font-size: 0.98rem;
        line-height: 1.7;
    }
}

body.tej-modern-page .entry-content .tej-primary-examples__intro,
body.tej-modern-page .entry-content .tej-word-bank__intro,
body.tej-modern-page .entry-content .tej-sentence-groups__intro,
body.tej-modern-page .entry-content .tej-language-errors__intro {
    color: #526173;
}

/* Continuidad entre contenidos relacionados, sin sustituir enlaces inline ni Recursos relacionados. */
body.tej-modern-page .entry-content .tej-contextual-note,
body.tej-modern-page .entry-content .tej-contextual-links {
    margin-block: 22px;
    padding: 13px 16px;
    border: 1px solid rgba(37, 113, 93, 0.22);
    border-inline-start: 4px solid var(--tej-green);
    border-radius: 6px;
    background: var(--tej-green-soft);
    color: var(--tej-title-navy);
    line-height: 1.6;
}

body.tej-modern-page .entry-content .tej-contextual-note a,
body.tej-modern-page .entry-content .tej-contextual-links a {
    font-weight: 700;
}

body.tej-modern-page .entry-content .tej-primary-examples__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
    margin: 14px 0 18px;
}

body.tej-modern-page .entry-content .tej-copyable:has(> .tej-primary-examples__actions) > h2 {
    padding-right: 0;
}

body.tej-modern-page .entry-content .tej-primary-examples__actions .tej-copy-button {
    position: static;
    inset: auto;
    margin: 0;
}

body.tej-modern-page .entry-content .tej-primary-examples__copy.tej-copy-button {
    width: auto;
    min-height: 42px;
    padding: 9px 14px;
    border-color: #0d68d8;
    background: #0d68d8;
    color: #ffffff;
    box-shadow: 0 5px 14px rgba(13, 104, 216, 0.2);
}

body.tej-modern-page .entry-content .tej-primary-examples__copy.tej-copy-button:hover {
    border-color: #084f9f;
    background: #084f9f;
    color: #ffffff;
}

body.tej-modern-page .entry-content .tej-primary-examples__copy.tej-copy-button:focus,
body.tej-modern-page .entry-content .tej-primary-examples__copy.tej-copy-button:focus-visible {
    outline-color: #77b9ff;
}

body.tej-modern-page .entry-content .tej-primary-examples__copy.tej-copy-button.is-copied {
    border-color: #084f9f;
    background: #084f9f;
    color: #ffffff;
}

@media (max-width: 767px) {
    body.tej-modern-page .entry-content .tej-primary-examples__actions {
        justify-content: flex-start;
    }

    body.tej-modern-page .entry-content .tej-primary-examples__actions .tej-copy-button {
        margin: 0;
    }
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper section.tej-word-bank {
    display: block;
    margin-top: 64px;
}

body.tej-modern-page .entry-content .tej-word-bank__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 22px;
}

body.tej-modern-page .entry-content .tej-word-bank__grid.tej-word-bank__grid--two-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.tej-modern-page .entry-content .tej-word-category {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: 16px;
    border: 1px solid #d8e3ef;
    border-radius: 8px;
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-word-category__header {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    min-height: 50px;
    margin-bottom: 12px;
}

body.tej-modern-page .entry-content .tej-word-category__icon,
body.tej-modern-page .entry-content .tej-sentence-group__icon,
body.tej-modern-page .entry-content .tej-language-error-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #eaf2ff;
    color: #2563eb;
}

body.tej-modern-page .entry-content .tej-word-category__icon svg,
body.tej-modern-page .entry-content .tej-sentence-group__icon svg,
body.tej-modern-page .entry-content .tej-language-error-card__icon svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-word-category__icon--animales,
body.tej-modern-page .entry-content .tej-word-category__icon--plantas,
body.tej-modern-page .entry-content .tej-sentence-group__icon--animales {
    background: #eaf8ef;
    color: #188957;
}

body.tej-modern-page .entry-content .tej-word-category__icon--lugares,
body.tej-modern-page .entry-content .tej-word-category__icon--instrumentos,
body.tej-modern-page .entry-content .tej-sentence-group__icon--lugares {
    background: #f1ecff;
    color: #7248cc;
}

body.tej-modern-page .entry-content .tej-word-category__icon--objetos,
body.tej-modern-page .entry-content .tej-word-category__icon--alimentos,
body.tej-modern-page .entry-content .tej-sentence-group__icon--objetos {
    background: #fff3db;
    color: #bd7100;
}

body.tej-modern-page .entry-content .tej-word-category__icon--ideas,
body.tej-modern-page .entry-content .tej-word-category__icon--sentimientos,
body.tej-modern-page .entry-content .tej-sentence-group__icon--ideas {
    background: #ffeaf1;
    color: #c43d6b;
}

body.tej-modern-page .entry-content .tej-word-category__icon--profesiones {
    background: #e8f4f8;
    color: #174f73;
}

body.tej-modern-page .entry-content .tej-word-category__heading,
body.tej-modern-page .entry-content .tej-sentence-group__heading {
    min-width: 0;
}

/* Some word categories intentionally omit an icon; let their heading use the full header grid. */
body.tej-modern-page .entry-content .tej-word-category__header > .tej-word-category__heading:only-child {
    grid-column: 1 / -1;
}

body.tej-modern-page .entry-content .tej-word-category__heading > p,
body.tej-modern-page .entry-content .tej-sentence-group__heading > p,
body.tej-modern-page .entry-content .tej-word-category > p,
body.tej-modern-page .entry-content .tej-sentence-group__header > p {
    margin: 0;
}

body.tej-modern-page .entry-content .tej-sentence-group__header > p {
    min-width: 0;
    grid-column: 3;
}

body.tej-modern-page .entry-content .tej-word-category h3.tej-word-category__title,
body.tej-modern-page .entry-content .tej-sentence-group h3.tej-sentence-group__title {
    margin: 0 0 4px;
    color: #0d2b45;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.28;
}

body.tej-modern-page .entry-content .tej-word-category__count,
body.tej-modern-page .entry-content .tej-sentence-group__count {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 3px 7px;
    border-radius: 6px;
    background: #edf4ff;
    color: #245bb8;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-word-category__words,
body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-word-category__extra {
    margin: 0;
    padding-left: 26px;
    color: #26384b;
    font-size: 0.9rem;
    line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-word-category__word,
body.tej-modern-page .entry-content .tej-word-category__word + .tej-word-category__word {
    margin: 0;
    padding: 6px 2px;
    border-bottom: 1px solid #e7edf4;
}

body.tej-modern-page .entry-content .tej-word-category__word::marker {
    color: #2563eb;
    font-weight: 700;
}

body.tej-modern-page .entry-content .tej-word-category__more > summary {
    display: none;
}

body.tej-modern-page .entry-content .tej-word-category__more:not([open]) > .tej-word-category__extra {
    display: block;
}

body.tej-modern-page .entry-content .tej-word-category__copy.tej-copy-button,
body.tej-modern-page .entry-content .tej-sentence-group__copy.tej-copy-button {
    position: static;
    min-height: 38px;
    max-width: 100%;
    padding: 8px 11px;
    border-radius: 7px;
    box-shadow: none;
    white-space: nowrap;
}

body.tej-modern-page .entry-content .tej-word-category__copy.tej-copy-button {
    width: 100%;
    margin: 14px 0 0;
}

body.tej-modern-page .entry-content .tej-sentence-groups {
    margin-top: 64px;
}

body.tej-modern-page .entry-content .tej-sentence-groups__list {
    display: grid;
    gap: 14px;
    margin-top: 22px;
}

body.tej-modern-page .entry-content .tej-sentence-group {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #d8e3ef;
    border-radius: 8px;
    background: #ffffff;
}

body.tej-modern-page .entry-content .tej-sentence-group__header {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    padding: 15px 16px 10px;
}

body.tej-modern-page .entry-content .tej-sentence-group__copy.tej-copy-button {
    margin: 0;
    font-size: 0.78rem;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-sentence-group__preview,
body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-sentence-group__extra {
    margin: 0;
    padding: 2px 24px 10px 48px;
    color: #2b3c4f;
    font-size: 0.94rem;
    line-height: 1.5;
}

body.tej-modern-page .entry-content .tej-sentence-group__sentence,
body.tej-modern-page .entry-content .tej-sentence-group__sentence + .tej-sentence-group__sentence {
    margin: 0;
    padding: 5px 0;
}

body.tej-modern-page .entry-content .tej-sentence-group__sentence::marker {
    color: #2563eb;
    font-weight: 700;
}

body.tej-modern-page .entry-content .tej-sentence-group__sentence strong {
    color: #0d4fb8;
    font-weight: 800;
}

body.tej-modern-page .entry-content .tej-sentence-group__toggle,
body.tej-modern-page .entry-content .tej-word-category__toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 12px;
    color: #1456c5;
    font-size: 0.82rem;
    font-weight: 750;
    line-height: 1.2;
    list-style: none;
    cursor: pointer;
}

body.tej-modern-page .entry-content .tej-sentence-group__toggle {
    margin: 0 16px;
    border-top: 1px solid #e3eaf2;
}

body.tej-modern-page .entry-content .tej-sentence-group__toggle::-webkit-details-marker,
body.tej-modern-page .entry-content .tej-word-category__toggle::-webkit-details-marker {
    display: none;
}

body.tej-modern-page .entry-content .tej-language-toggle__close {
    display: none;
}

body.tej-modern-page .entry-content details[open] > summary .tej-language-toggle__open {
    display: none;
}

body.tej-modern-page .entry-content details[open] > summary .tej-language-toggle__close {
    display: inline;
}

body.tej-modern-page .entry-content .tej-language-toggle__chevron {
    display: inline-flex;
    transition: transform 160ms ease;
}

body.tej-modern-page .entry-content details[open] > summary .tej-language-toggle__chevron {
    transform: rotate(180deg);
}

body.tej-modern-page .entry-content .tej-language-toggle__chevron svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

body.tej-modern-page .entry-content .tej-language-practice {
    margin-top: 64px;
}

body.tej-modern-page .entry-content .tej-language-comparison th,
body.tej-modern-page .entry-content .tej-language-comparison td {
    padding: 12px 13px;
    font-size: 0.88rem;
    line-height: 1.45;
}

body.tej-modern-page .entry-content .tej-language-comparison table {
    min-width: 700px;
}

body.tej-modern-page .entry-content .tej-language-comparison tbody th {
    background: #f8fafc;
    color: #0d2b45;
    font-weight: 800;
    text-align: left;
}

body.tej-modern-page .entry-content .tej-language-practice__intro {
    max-width: 720px;
    margin-bottom: 20px;
}

body.tej-modern-page .entry-content .tej-language-practice__dashboard {
    display: grid;
    grid-template-columns: minmax(180px, auto) minmax(160px, 1fr) auto;
    align-items: center;
    gap: 18px;
    margin-bottom: 20px;
    padding: 16px 18px;
    border: 1px solid #cfe0ef;
    border-radius: 8px;
    background: #f4f8fd;
}

body.tej-modern-page .entry-content .tej-language-practice__progress-copy {
    display: flex;
    flex-direction: column;
    gap: 3px;
    color: #52667a;
    font-size: 0.78rem;
    line-height: 1.3;
}

body.tej-modern-page .entry-content .tej-language-practice__progress-copy strong {
    color: #0d2b45;
    font-size: 0.94rem;
    font-weight: 500;
}

body.tej-modern-page .entry-content .tej-language-practice__progress {
    width: 100%;
    height: 10px;
    overflow: hidden;
    border: 0;
    border-radius: 5px;
    background: #dfe9f4;
}

body.tej-modern-page .entry-content .tej-language-practice__progress::-webkit-progress-bar {
    border-radius: 5px;
    background: #dfe9f4;
}

body.tej-modern-page .entry-content .tej-language-practice__progress::-webkit-progress-value {
    border-radius: 5px;
    background: #246fe5;
}

body.tej-modern-page .entry-content .tej-language-practice__progress::-moz-progress-bar {
    border-radius: 5px;
    background: #246fe5;
}

body.tej-modern-page .entry-content .tej-language-practice__score {
    color: #1456c5;
    font-size: 0.88rem;
    font-weight: 500;
    white-space: nowrap;
}

body.tej-modern-page .entry-content .tej-language-practice__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 16px;
}

body.tej-modern-page .entry-content .tej-language-practice__item {
    display: flex;
    height: 100%;
    min-width: 0;
    margin: 0;
    padding: 18px;
    flex-direction: column;
    border: 1px solid #d8e1ea;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(13, 43, 69, 0.04);
}

body.tej-modern-page .entry-content fieldset.tej-language-practice__item {
    min-inline-size: 0;
}

body.tej-modern-page .entry-content .tej-language-practice__item[data-state="correct"] {
    border-color: #95d7ae;
}

body.tej-modern-page .entry-content .tej-language-practice__item[data-state="incorrect"] {
    border-color: #efb2a9;
}

body.tej-modern-page .entry-content .tej-language-practice__item[data-state="unanswered"] {
    border-color: #e4bd70;
}

body.tej-modern-page .entry-content .tej-language-practice__question {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: start;
    gap: 10px;
    width: 100%;
    padding: 0;
}

body.tej-modern-page .entry-content .tej-language-practice__number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #eaf2ff;
    color: #1456c5;
    font-size: 0.78rem;
    font-weight: 800;
}

body.tej-modern-page .entry-content .tej-language-practice__question p {
    margin: 3px 0 0;
    color: #0d2b45;
    font-size: 0.98rem;
    font-weight: 750;
    line-height: 1.45;
}

body.tej-modern-page .entry-content .tej-language-practice__question p strong {
    font-weight: inherit;
}

body.tej-modern-page .entry-content .tej-language-practice__question-text {
    margin: 3px 0 0;
    color: #0d2b45;
    font-size: 0.98rem;
    font-weight: 750;
    line-height: 1.45;
}

body.tej-modern-page .entry-content .tej-language-practice__term {
    margin: 15px 0 11px;
    color: #52667a;
    font-size: 0.82rem;
}

body.tej-modern-page .entry-content .tej-language-practice__term strong {
    color: #0d2b45;
    font-weight: 400;
}

body.tej-modern-page .entry-content .tej-language-practice__choices {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

body.tej-modern-page .entry-content .tej-language-practice__choices button,
body.tej-modern-page .entry-content .tej-language-practice__choice,
body.tej-modern-page .entry-content .tej-language-practice__check,
body.tej-modern-page .entry-content .tej-language-practice__reset {
    min-height: 44px;
    border: 1px solid #b8c8d9;
    border-radius: 7px;
    background: #fff;
    color: #143652;
    font-family: inherit;
    font-size: 0.86rem;
    line-height: 1.2;
    cursor: pointer;
}

body.tej-modern-page .entry-content .tej-language-practice__choices button,
body.tej-modern-page .entry-content .tej-language-practice__choice,
body.tej-modern-page .entry-content .tej-language-practice__choices button strong,
body.tej-modern-page .entry-content .tej-language-practice__choice strong {
    font-weight: 400;
}

body.tej-modern-page .entry-content .tej-language-practice__check,
body.tej-modern-page .entry-content .tej-language-practice__reset {
    font-weight: 700;
}

body.tej-modern-page .entry-content .tej-language-practice__choice {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    padding: 10px 12px;
}

body.tej-modern-page .entry-content .tej-language-practice__choice input {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #246fe5;
    flex: 0 0 auto;
}

body.tej-modern-page .entry-content .tej-language-practice__choice:focus-within,
body.tej-modern-page .entry-content .tej-language-practice__choice:hover {
    border-color: #2e7be8;
    background: #f2f7ff;
    color: #1456c5;
}

body.tej-modern-page .entry-content .tej-language-practice__choices button:not([aria-disabled="true"]):hover {
    border-color: #2e7be8;
    background: #f2f7ff;
    color: #1456c5;
}

body.tej-modern-page .entry-content .tej-language-practice__choices button:focus-visible,
body.tej-modern-page .entry-content .tej-language-practice__check:focus-visible,
body.tej-modern-page .entry-content .tej-language-practice__reset:focus-visible {
    outline: 3px solid rgba(46, 123, 232, 0.35);
    outline-offset: 2px;
}

body.tej-modern-page .entry-content .tej-language-practice__choices button[aria-disabled="true"] {
    cursor: default;
    opacity: 1;
}

body.tej-modern-page .entry-content .tej-language-practice__choices button.is-correct-answer {
    border-color: #73c794;
    background: #eaf8ef;
    color: #176c3c;
}

body.tej-modern-page .entry-content .tej-language-practice__choice.is-correct-answer {
    border-color: #73c794;
    background: #eaf8ef;
    color: #176c3c;
}

body.tej-modern-page .entry-content .tej-language-practice__choices button.is-incorrect-answer {
    border-color: #e69b90;
    background: #fff0ed;
    color: #9b3025;
}

body.tej-modern-page .entry-content .tej-language-practice__choice.is-incorrect-answer {
    border-color: #e69b90;
    background: #fff0ed;
    color: #9b3025;
}

body.tej-modern-page .entry-content .tej-language-practice__feedback {
    margin-top: 12px;
    padding: 12px 13px;
    border-radius: 7px;
    background: #f4f8fd;
    color: #35475a;
}

body.tej-modern-page .entry-content .tej-language-practice__item[data-state="correct"] .tej-language-practice__feedback {
    background: #f0faf4;
}

body.tej-modern-page .entry-content .tej-language-practice__item[data-state="incorrect"] .tej-language-practice__feedback {
    background: #fff7f5;
}

body.tej-modern-page .entry-content .tej-language-practice__item[data-state="unanswered"] .tej-language-practice__feedback {
    background: #fff8e9;
}

body.tej-modern-page .entry-content .tej-language-practice__feedback strong {
    display: block;
    margin-bottom: 4px;
    color: #0d2b45;
    font-size: 0.86rem;
    font-weight: 400;
}

body.tej-modern-page .entry-content .tej-language-practice__feedback p {
    margin: 0;
    font-size: 0.84rem;
    line-height: 1.5;
}

body.tej-modern-page .entry-content .tej-language-practice__feedback[hidden],
body.tej-modern-page .entry-content .tej-language-practice__completion[hidden],
body.tej-modern-page .entry-content .tej-language-practice__reset[hidden] {
    display: none;
}

body.tej-modern-page .entry-content .tej-language-practice__completion {
    margin: 18px 0 0;
    padding: 13px 15px;
    border: 1px solid #b9d2f3;
    border-radius: 7px;
    background: #eef5ff;
    color: #0d2b45;
    font-weight: 400;
}

body.tej-modern-page .entry-content .tej-language-practice__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
}

body.tej-modern-page .entry-content .tej-language-practice__check {
    padding: 10px 17px;
    border-color: #246fe5;
    background: #246fe5;
    color: #fff;
}

body.tej-modern-page .entry-content .tej-language-practice__check:hover:not(:disabled) {
    background: #1456c5;
}

body.tej-modern-page .entry-content .tej-language-practice__check:disabled {
    cursor: default;
    opacity: 0.65;
}

body.tej-modern-page .entry-content .tej-language-practice__actions .tej-language-practice__completion {
    width: 100%;
    margin-top: 2px;
}

body.tej-modern-page .entry-content .tej-language-practice__reset {
    padding: 10px 16px;
    border-color: #2e7be8;
    color: #1456c5;
}

body.tej-modern-page .entry-content .tej-language-practice__reset:hover {
    background: #f2f7ff;
}

body.tej-modern-page .entry-content .tej-language-errors {
    margin-top: 64px;
}

body.tej-modern-page .entry-content .tej-language-errors__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 22px;
}

body.tej-modern-page .entry-content .tej-language-error-card {
    min-width: 0;
    padding: 18px;
    border: 1px solid #edcf91;
    border-radius: 8px;
    background: #fffaf1;
}

body.tej-modern-page .entry-content .tej-language-error-card__icon {
    margin-bottom: 13px;
    background: #fff0cf;
    color: #bd7100;
}

body.tej-modern-page .entry-content .tej-language-error-card h3 {
    margin: 0 0 10px;
    color: #0d2b45;
    font-size: 1rem;
    font-weight: 800;
    line-height: 1.32;
}

body.tej-modern-page .entry-content .tej-language-error-card p {
    margin: 0;
    color: #35475a;
    font-size: 0.9rem;
    line-height: 1.6;
}

@media screen and (max-width: 900px) {
    body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-primary-examples__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.tej-modern-page .entry-content .tej-word-bank__grid,
    body.tej-modern-page .entry-content .tej-language-errors__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--compact-grid ol.tej-primary-examples__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--analysis-grid ol.tej-primary-examples__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--stacked-analysis ol.tej-primary-examples__grid,
    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--editorial-list ol.tej-primary-examples__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.tej-modern-page .entry-content .tej-language-practice__grid {
        grid-template-columns: 1fr;
    }

    body.tej-modern-page .entry-content .tej-primary-example,
    body.tej-modern-page .entry-content .tej-primary-example + .tej-primary-example,
    body.tej-modern-page .entry-content .tej-language-practice__item {
        height: auto;
    }
}

@media screen and (max-width: 600px) {
    body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-primary-examples__grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--compact-grid ol.tej-primary-examples__grid,
    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--analysis-grid ol.tej-primary-examples__grid,
    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--stacked-analysis ol.tej-primary-examples__grid,
    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-layout--editorial-list ol.tej-primary-examples__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-primary-examples--detailed ol.tej-primary-examples__grid {
        grid-template-columns: 1fr;
    }

    body.tej-modern-page .entry-content .tej-word-bank__grid,
    body.tej-modern-page .entry-content .tej-word-bank__grid.tej-word-bank__grid--two-columns,
    body.tej-modern-page .entry-content .tej-language-errors__grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    body.tej-modern-page .entry-content .tej-word-category {
        padding: 14px;
    }

    body.tej-modern-page .entry-content .tej-word-category__more > summary {
        display: flex;
        margin-top: 3px;
        border-bottom: 1px solid #e3eaf2;
    }

    body.tej-modern-page .entry-content .tej-word-category__more:not([open]) > .tej-word-category__extra {
        display: none;
    }

    body.tej-modern-page .entry-content .tej-word-category__more[open] > .tej-word-category__extra {
        display: block;
    }

    body.tej-modern-page .entry-content .tej-layout--grouped-visible-list .tej-word-category__more > summary {
        display: none;
    }

    body.tej-modern-page .entry-content .tej-layout--grouped-visible-list .tej-word-category__more:not([open]) > .tej-word-category__extra,
    body.tej-modern-page .entry-content .tej-layout--grouped-visible-list .tej-word-category__more[open] > .tej-word-category__extra {
        display: block;
    }

    body.tej-modern-page .entry-content .tej-sentence-group__header {
        grid-template-columns: 34px minmax(0, 1fr);
        padding: 14px 14px 10px;
    }

    body.tej-modern-page .entry-content .tej-sentence-group__icon,
    body.tej-modern-page .entry-content .tej-word-category__icon {
        width: 34px;
        height: 34px;
    }

    body.tej-modern-page .entry-content .tej-sentence-group__copy.tej-copy-button {
        width: 100%;
        margin-top: 4px;
    }

    body.tej-modern-page .entry-content .tej-sentence-group__header > p {
        width: 100%;
        grid-column: 2;
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-sentence-group__preview,
    body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-sentence-group__extra {
        padding-right: 16px;
        padding-left: 42px;
        font-size: 0.9rem;
    }

    body.tej-modern-page .entry-content .tej-sentence-group__toggle {
        margin: 0 14px;
    }

    body.tej-modern-page .entry-content .tej-language-practice__dashboard {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 10px 14px;
        padding: 14px;
    }

    body.tej-modern-page .entry-content .tej-language-practice__progress {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    body.tej-modern-page .entry-content .tej-language-practice__item {
        padding: 15px;
    }
}

@media screen and (max-width: 430px) {
    body.tej-modern-page .entry-content .tej-modern-content-wrapper ol.tej-primary-examples__grid {
        grid-template-columns: 1fr;
    }

    body.tej-modern-page .entry-content .tej-primary-example,
    body.tej-modern-page .entry-content .tej-primary-example + .tej-primary-example {
        display: grid;
        grid-template-columns: 28px minmax(0, 1fr);
        align-items: start;
        gap: 10px;
        padding: 13px;
    }

    body.tej-modern-page .entry-content .tej-primary-example h3.tej-primary-example__word {
        font-size: 0.96rem;
    }

    body.tej-modern-page .entry-content .tej-primary-example p.tej-primary-example__description {
        font-size: 0.88rem;
        line-height: 1.5;
    }

    body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example,
    body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example + .tej-primary-example {
        display: block;
        height: auto;
        padding: 18px;
    }

    body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example__content {
        width: 100%;
    }

    body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example h3.tej-primary-example__word {
        margin-bottom: 14px;
        font-size: 1.04rem;
    }

    body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example p.tej-developed-narrative__paragraph {
        margin-bottom: 14px;
        font-size: 0.94rem;
        line-height: 1.65;
    }

    body.tej-modern-page .entry-content .tej-developed-narrative .tej-primary-example p.tej-developed-narrative__analysis {
        margin-top: 18px;
        padding-top: 16px;
        font-size: 0.92rem;
    }

    body.tej-modern-page .entry-content .tej-word-category__copy.tej-copy-button,
    body.tej-modern-page .entry-content .tej-sentence-group__copy.tej-copy-button {
        min-height: 42px;
    }

    body.tej-modern-page .entry-content .tej-language-error-card {
        padding: 16px;
    }
}

/* Fase 59: CTA del hero y acceso rapido configurables por entrada moderna. */
body.tej-modern-page .tej-editorial-hero__cta {
    margin: 22px 0 0;
}

body.tej-modern-page .tej-hero-cta {
    display: inline-flex;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 44px;
    padding: 10px 18px;
    border: 1px solid #0d68d8;
    border-radius: 8px;
    background: #0d68d8;
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
}

body.tej-modern-page .tej-hero-cta:hover {
    border-color: #084f9f;
    background: #084f9f;
    color: #ffffff;
    text-decoration: none;
}

body.tej-modern-page .tej-hero-cta:focus-visible {
    outline: 3px solid #77b9ff;
    outline-offset: 3px;
}

body.tej-modern-page .tej-hero-cta svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

body.tej-modern-page .entry-content .tej-quick-access {
    margin: 26px 0 0;
    padding: 0;
    border: 0;
    background: transparent;
}

body.tej-modern-page .entry-content .tej-quick-access__title {
    margin: 0 0 14px;
    color: #073b5c;
    font-size: 1.5rem;
    font-weight: 800;
    line-height: 1.2;
}

body.tej-modern-page .entry-content .tej-quick-access__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

body.tej-modern-page .entry-content .tej-quick-access__list li {
    margin: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper .tej-quick-access__list li + li {
    margin-top: 0;
}

body.tej-modern-page .entry-content .tej-quick-access__list a {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 12px;
    min-height: 76px;
    padding: 12px 14px;
    border: 1px solid #d5e3df;
    border-radius: 8px;
    background: #ffffff;
    color: #073b5c;
    text-decoration: none;
    transition: border-color 160ms ease, box-shadow 160ms ease, color 160ms ease;
}

body.tej-modern-page .entry-content .tej-quick-access__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #e7f5ef;
    color: #13795b;
}

body.tej-modern-page .entry-content .tej-quick-access__icon svg,
body.tej-modern-page .entry-content .tej-quick-access__arrow svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

body.tej-modern-page .entry-content .tej-quick-access__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

body.tej-modern-page .entry-content .tej-quick-access__label {
    color: #07583f;
    font-size: 0.94rem;
    font-weight: 750;
    line-height: 1.25;
}

body.tej-modern-page .entry-content .tej-quick-access__description {
    color: #526b78;
    font-size: 0.84rem;
    font-weight: 400;
    line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-quick-access__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #0d68d8;
}

body.tej-modern-page .entry-content .tej-quick-access__list a:hover {
    border-color: #8fc8b5;
    box-shadow: 0 4px 12px rgba(7, 59, 92, 0.08);
    color: #0d68d8;
    text-decoration: none;
}

body.tej-modern-page .entry-content .tej-quick-access__list a:hover .tej-quick-access__label {
    color: #0d68d8;
}

body.tej-modern-page .entry-content .tej-quick-access__list a:focus-visible {
    outline: 3px solid #77b9ff;
    outline-offset: 2px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper [id] {
    scroll-margin-top: 120px;
}

@media screen and (max-width: 767px) {
    body.tej-modern-page .tej-hero-cta {
        width: 100%;
    }

    body.tej-modern-page .entry-content .tej-quick-access {
        margin-top: 22px;
    }

    body.tej-modern-page .entry-content .tej-quick-access__title {
        font-size: 1.35rem;
    }

    body.tej-modern-page .entry-content .tej-quick-access__list {
        grid-template-columns: 1fr;
    }

    body.tej-modern-page .entry-content .tej-quick-access__list a {
        min-height: 84px;
    }

    body.tej-modern-page .entry-content .tej-modern-content-wrapper [id] {
        scroll-margin-top: 92px;
    }
}

/* Fase 60: directorio reutilizable para hubs tematicos. */
body.tej-modern-page .tej-hub-directory {
	margin: 58px 0 42px;
	padding: 0;
}

body.tej-modern-page .tej-hub-directory__header {
	max-width: 760px;
	margin-bottom: 24px;
}

body.tej-modern-page .tej-hub-directory__eyebrow {
	margin: 0 0 5px;
	color: #13795b;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
}

body.tej-modern-page .tej-hub-directory__title {
	margin: 0 0 9px;
	color: #0b3558;
	font-size: 32px;
	line-height: 1.15;
}

body.tej-modern-page .tej-hub-directory__description {
	margin: 0;
	color: #40556b;
	font-size: 17px;
	line-height: 1.6;
}

body.tej-modern-page .tej-hub-directory__groups {
	display: grid;
	gap: 34px;
}

body.tej-modern-page .tej-hub-directory__group h3 {
	margin: 0 0 14px;
	color: #0b3558;
	font-size: 21px;
	line-height: 1.3;
}

body.tej-modern-page .tej-hub-directory__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.tej-modern-page .tej-hub-directory__grid li {
	min-width: 0;
	margin: 0;
}

body.tej-modern-page .tej-hub-directory__grid a {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr) 18px;
	align-items: center;
	gap: 12px;
	box-sizing: border-box;
	height: 100%;
	min-height: 104px;
	padding: 15px;
	border: 1px solid #d3dee6;
	border-radius: 8px;
	background: #fff;
	color: inherit;
	text-decoration: none;
	transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

body.tej-modern-page .tej-hub-directory__grid a:hover {
	border-color: #86b6a5;
	box-shadow: 0 5px 16px rgba(20, 55, 78, 0.08);
	transform: translateY(-1px);
}

body.tej-modern-page .tej-hub-directory__grid a:focus-visible {
	outline: 3px solid #1769d2;
	outline-offset: 2px;
}

body.tej-modern-page .tej-hub-directory__item-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #e9f6f1;
	color: #13795b;
}

body.tej-modern-page .tej-hub-directory__item-icon svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

body.tej-modern-page .tej-hub-directory__item-copy {
	display: block;
	min-width: 0;
}

body.tej-modern-page .tej-hub-directory__item-copy strong,
body.tej-modern-page .tej-hub-directory__item-copy span {
	display: block;
}

body.tej-modern-page .tej-hub-directory__item-copy strong {
	margin-bottom: 4px;
	color: #0b3558;
	font-size: 16px;
	line-height: 1.3;
}

body.tej-modern-page .tej-hub-directory__item-copy span {
	color: #50667a;
	font-size: 14px;
	line-height: 1.45;
}

body.tej-modern-page .tej-hub-directory__item-arrow {
	color: #13795b;
	font-size: 19px;
	font-weight: 700;
}

@media (max-width: 767px) {
	body.tej-modern-page .tej-hub-directory {
		margin-top: 44px;
	}

	body.tej-modern-page .tej-hub-directory__title {
		font-size: 27px;
	}

	body.tej-modern-page .tej-hub-directory__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	body.tej-modern-page .tej-hub-directory__grid a {
		min-height: 96px;
	}
}

/* Variante opt-in para el pulido visual de pilares en revision humana. */
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean {
	--tej-pilot-border: #d7e0e7;
	--tej-pilot-neutral: #f8fafc;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-heading-color--navy h2 {
	margin-bottom: 14px;
	padding-top: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean h2 {
	margin-bottom: 14px;
	padding-top: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean h2::before {
	display: none;
	content: none;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-content-index h2::before {
	display: none;
	content: none;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-content-index {
	border-top: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean > .tej-content-index {
	margin-block-start: 36px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean > section,
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean > nav {
	margin-block-start: 52px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean > .tej-article-intro + .tej-note-box {
	margin-block-start: 24px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean p {
	margin-block-end: 14px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean p:last-child {
	margin-block-end: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-note-box {
	padding-block: 22px;
	border: 1px solid var(--tej-pilot-border);
	background: var(--tej-pilot-neutral);
	color: #334155;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-note-box p {
	margin-block-end: 16px;
	line-height: 1.65;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-examples__grid,
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-errors__grid,
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-faq-list {
	margin-block-start: 22px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-copyable > .tej-primary-examples__intro {
	margin-block-end: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-copyable > h2 {
	padding-inline-end: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-copyable > .tej-primary-examples__actions {
	justify-content: flex-end;
	margin: 14px 0 18px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-copyable > .tej-primary-examples__actions .tej-primary-examples__copy.tej-copy-button {
	position: static;
	inset: auto;
	margin: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-copyable > .tej-primary-examples__actions + .tej-primary-examples__grid {
	margin-block-start: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example,
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-practice__item,
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-faq-item {
	border-color: var(--tej-pilot-border);
	background: #ffffff;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example,
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example + .tej-primary-example {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	align-items: start;
	gap: 12px;
	height: 100%;
	padding: 18px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example__number {
	align-self: start;
	margin: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example__content {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 8px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example__content h3.tej-primary-example__word,
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example__content p {
	margin: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example__content h3.tej-primary-example__word {
	line-height: 1.4;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example__content p {
	line-height: 1.55;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-section.tej-primary-examples > h2 + p {
	margin-block-end: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-section.tej-primary-examples > p + .tej-primary-examples__grid {
	margin-block-start: 22px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-section.tej-primary-examples > .tej-primary-examples__grid + p {
	margin-block-start: 22px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-conjunction-subtype-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 24px;
	margin: 22px 0 0;
	padding-inline-start: 22px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-conjunction-subtype-list li {
	margin: 0;
	line-height: 1.55;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-conjunction-subtype-list + p {
	margin-block-start: 22px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-errors__grid {
	align-items: stretch;
	gap: 14px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-error-card {
	display: flex;
	min-height: 100%;
	flex-direction: column;
	gap: 10px;
	padding: 20px 18px;
	border: 1px solid #edcf91;
	border-top: 3px solid #d97706;
	background: #fffaf1;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-error-card h3,
body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-error-card p {
	margin: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-error-card h3 {
	font-size: 1rem;
	line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-error-card p {
	font-size: 0.92rem;
	line-height: 1.55;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory {
	margin-block-end: 0;
	padding: 0;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__header {
	margin-block-end: 22px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__title {
	margin-block-end: 10px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__grid {
	align-items: stretch;
	gap: 14px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__grid li {
	display: flex;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__grid a {
	grid-template-columns: 40px minmax(0, 1fr) 18px;
	flex: 1 1 auto;
	gap: 12px;
	min-height: 96px;
	padding: 16px;
	border-color: var(--tej-pilot-border);
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__grid li:last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__item-icon {
	width: 40px;
	height: 40px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__item-copy strong {
	margin-block-end: 5px;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__item-arrow {
	justify-self: center;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact {
	--tej-pilot-border: #d7e0e7;
	--tej-pilot-neutral: #f8fafc;
	margin-block-start: 52px;
	padding: 22px;
	border-color: var(--tej-pilot-border);
	background: var(--tej-pilot-neutral);
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__apa {
	padding: 0;
	border: 0;
	background: transparent;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__heading {
	gap: 9px;
	margin-block-end: 10px;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__heading h3 {
	padding-top: 0;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__heading h3::before {
	display: none;
	content: none;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__icon {
	width: 32px;
	height: 32px;
	background: #eef2f6;
	color: #526173;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__icon svg {
	width: 18px;
	height: 18px;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__apa-reference {
	margin-block-start: 12px;
	padding: 14px;
	border-color: var(--tej-pilot-border);
	background: #ffffff;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__apa-note {
	margin-block-start: 12px;
	color: #526173;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-block-start: 18px;
	padding-block-start: 18px;
	border-top: 1px solid var(--tej-pilot-border);
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__section {
	padding-inline-start: 16px;
	border-color: var(--tej-pilot-border);
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__section:first-child {
	padding-inline-start: 0;
}

body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__corrections {
	margin-block-start: 18px;
	padding: 13px 14px;
	border-color: var(--tej-pilot-border);
	background: #ffffff;
}

@media screen and (max-width: 767px) {
	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean > section,
	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean > nav {
		margin-block-start: 48px;
	}

	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean > .tej-article-intro + .tej-note-box {
		margin-block-start: 22px;
	}

	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-copyable > .tej-primary-examples__actions {
		justify-content: flex-start;
	}

	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example,
	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example + .tej-primary-example {
		height: auto;
	}

	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-conjunction-subtype-list {
		grid-template-columns: minmax(0, 1fr);
	}

	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__grid li:last-child:nth-child(odd) {
		grid-column: auto;
	}

	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-hub-directory__grid a {
		min-height: 0;
	}

	body.tej-modern-page .entry-content .tej-editorial-info--compact {
		padding: 18px;
	}

	body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__grid {
		grid-template-columns: minmax(0, 1fr);
	}

	body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__section,
	body.tej-modern-page .entry-content .tej-editorial-info--compact .tej-editorial-info__section:nth-child(3) {
		padding: 0;
		border-left: 0;
	}
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-language-errors__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media screen and (max-width: 900px) {
	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example,
	body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean .tej-primary-example + .tej-primary-example {
		height: auto;
	}
}

/* Reusable didactic steps and compact editorial table. */
body.tej-modern-page .entry-content .tej-simple-noun-table__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 10px;
	margin-block: 14px 18px;
}

body.tej-modern-page .entry-content .tej-simple-noun-table__actions .tej-copy-button {
	position: static;
	inset: auto;
	width: auto;
	margin: 0;
}

body.tej-modern-page .entry-content .tej-simple-noun-table .tej-table-wrap {
	margin-block-start: 0;
}

body.tej-modern-page .entry-content .tej-english-primary-group + .tej-english-primary-group {
	margin-block-start: 32px;
}

/* Keep consecutive primary example groups visually distinct. */
body.tej-modern-page .entry-content .tej-primary-example-group + .tej-primary-example-group {
	margin-block-start: 32px;
}

body.tej-modern-page .entry-content .tej-simple-noun-table__word {
	width: 32%;
	color: #0D2B45;
	font-weight: 750;
}

body.tej-modern-page .entry-content .tej-simple-noun-table__sentence {
	color: #263746;
}

body.tej-modern-page .entry-content .tej-table-scroll-note {
	display: none;
	margin: 0 0 10px;
	color: #526173;
	font-size: 0.88rem;
	line-height: 1.45;
}

body.tej-modern-page .entry-content .tej-didactic-steps {
	position: relative;
	display: grid;
	gap: 0;
	margin: 22px 0 0;
	padding: 0;
	list-style: none;
	counter-reset: tej-didactic-step;
}

body.tej-modern-page .entry-content .tej-didactic-steps::before {
	position: absolute;
	top: 20px;
	bottom: 20px;
	left: 20px;
	width: 2px;
	background: #93C5FD;
	content: "";
}

body.tej-modern-page .entry-content .tej-didactic-step {
	position: relative;
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 14px;
	margin: 0;
	padding: 0 0 26px;
}

/* Supports the compact list markup used by current editorial pages. */
body.tej-modern-page .entry-content .tej-didactic-steps__item {
	position: relative;
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	column-gap: 14px;
	margin: 0;
	padding: 0 0 26px;
	counter-increment: tej-didactic-step;
}

body.tej-modern-page .entry-content .tej-didactic-steps__item::before {
	z-index: 1;
	display: inline-flex;
	grid-row: span 2;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 2px solid #BFDBFE;
	border-radius: 50%;
	background: #EFF6FF;
	color: #0D4FB8;
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1;
	content: counter(tej-didactic-step);
}

/* The compact markup already receives its step number from ::before. */
body.tej-modern-page .entry-content .tej-didactic-steps__item > .tej-didactic-steps__number {
	display: none;
}

body.tej-modern-page .entry-content .tej-didactic-step:last-child {
	padding-block-end: 0;
}

body.tej-modern-page .entry-content .tej-didactic-steps__item:last-child {
	padding-block-end: 0;
}

body.tej-modern-page .entry-content .tej-didactic-step__number {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 2px solid #BFDBFE;
	border-radius: 50%;
	background: #EFF6FF;
	color: #0D4FB8;
	font-size: 0.95rem;
	font-weight: 800;
	line-height: 1;
}

body.tej-modern-page .entry-content .tej-didactic-step__content {
	min-width: 0;
	padding-block-start: 2px;
}

body.tej-modern-page .entry-content .tej-didactic-step__content h3 {
	margin: 0 0 7px;
	color: #0D2B45;
	font-size: 1.08rem;
	line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-didactic-step__content p {
	margin: 0;
	color: #334155;
	line-height: 1.65;
}

body.tej-modern-page .entry-content .tej-didactic-steps__item h3 {
	grid-column: 2;
	margin: 2px 0 7px;
	color: #0D2B45;
	font-size: 1.08rem;
	line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-didactic-steps__item p {
	grid-column: 2;
	margin: 0;
	color: #334155;
	line-height: 1.65;
}

/* Reusable single-block summary for conceptual ideas. */
body.tej-modern-page .entry-content .tej-key-ideas {
	margin-block: 22px;
	padding: 18px 20px;
	border-left: 4px solid #3B82F6;
	border-radius: 0 6px 6px 0;
	background: #EFF6FF;
	color: #263746;
}

body.tej-modern-page .entry-content .tej-key-ideas__title {
	margin: 0 0 10px;
	color: #0D2B45;
	font-size: 1rem;
	line-height: 1.35;
}

body.tej-modern-page .entry-content .tej-key-ideas__list {
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.tej-modern-page .entry-content .tej-key-ideas__list li {
	position: relative;
	margin: 0;
	padding-left: 22px;
	line-height: 1.55;
}

body.tej-modern-page .entry-content .tej-key-ideas__list li::before {
	position: absolute;
	top: 0.1em;
	left: 0;
	color: #2563EB;
	font-weight: 800;
	content: "✓";
}

@media screen and (max-width: 767px) {
	body.tej-modern-page .entry-content .tej-english-primary-group + .tej-english-primary-group {
		margin-block-start: 28px;
	}

	body.tej-modern-page .entry-content .tej-key-ideas {
		padding: 16px;
	}

	body.tej-modern-page .entry-content .tej-simple-noun-table__actions {
		justify-content: flex-start;
	}

	body.tej-modern-page .entry-content .tej-table-scroll-note {
		display: block;
	}

	body.tej-modern-page .entry-content .tej-didactic-steps::before {
		left: 17px;
	}

	body.tej-modern-page .entry-content .tej-didactic-step {
		grid-template-columns: 36px minmax(0, 1fr);
		gap: 12px;
		padding-block-end: 22px;
	}

	body.tej-modern-page .entry-content .tej-didactic-step__number {
		width: 36px;
		height: 36px;
	}

	body.tej-modern-page .entry-content .tej-didactic-steps__item {
		grid-template-columns: 36px minmax(0, 1fr);
		column-gap: 12px;
		padding-block-end: 22px;
	}

	body.tej-modern-page .entry-content .tej-didactic-steps__item::before {
		width: 36px;
		height: 36px;
	}
}

/* Editorial H2 headings use typography, not a decorative rule above the title. */
body.tej-modern-page .entry-content .tej-modern-content-wrapper h2::before,
body.tej-modern-page .entry-content .tej-editorial-flow > .tej-editorial-section > h2::before,
body.tej-modern-page .entry-content .tej-collapsible-section > summary h2::before,
body.tej-modern-page .entry-content .tej-modern-content-wrapper h2.tej-faq-section__title::before,
body.tej-modern-page .entry-content .tej-examples-section > h2::before {
	display: none;
	content: none;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper h2 {
	padding-top: 0;
}

/* Tabla institucional: conserva la informacion completa sin desbordar en movil. */
.tej-institutional-table-wrap {
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tej-institutional-table-wrap:focus-visible {
	outline: 3px solid #0d2b45;
	outline-offset: 3px;
}

.tej-institutional-table-wrap table {
	min-width: 48rem;
}

/* Ajuste final del hero editorial: sin tarjeta exterior y con beneficios en línea. */
body.tej-modern-page.separate-containers .inside-article,
body.tej-modern-page .inside-article {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body.tej-modern-page .entry-header:has(.tej-editorial-hero) {
	max-width: none;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

@media screen and (max-width: 768px) {
	body.tej-modern-page.separate-containers .inside-article,
	body.tej-modern-page .inside-article {
		padding: 0;
		border-radius: 0;
	}
}

/* Hero de artículos alineado con el fondo y el lenguaje de las categorías. */
body.tej-modern-page .site-content {
	background: #ffffff;
}

body.tej-modern-page .migas {
	display: none;
}

body.tej-modern-page.separate-containers .inside-article,
body.tej-modern-page .inside-article {
	overflow: visible;
}

body.tej-modern-page .entry-header:has(.tej-editorial-hero) {
	box-sizing: border-box;
	width: calc(100% + 100px);
	max-width: none;
	margin-left: -50px;
	padding: 40px 106px 34px;
	background: radial-gradient(circle at 18% 18%, #ffffff 0, transparent 26%), linear-gradient(135deg, #eef7ff 0%, #f9fcff 55%, #eaf5ff 100%);
	text-align: left;
}

body.tej-modern-page .tej-editorial-hero {
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas: "content" "benefits";
	row-gap: 24px;
}

body.tej-modern-page .tej-editorial-hero__content {
	max-width: 640px;
}

body.tej-modern-page .tej-editorial-hero__breadcrumb {
	display: flex;
	gap: 7px;
	margin: 0 0 16px;
	color: #6685a3;
	font-size: .76rem;
	line-height: 1.25;
}

body.tej-modern-page .tej-editorial-hero__breadcrumb a {
	color: inherit;
	text-decoration: none;
}

body.tej-modern-page .tej-editorial-hero__breadcrumb a:hover {
	color: #1269ad;
	text-decoration: underline;
}

body.tej-modern-page .tej-editorial-hero__breadcrumb .aioseo-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

body.tej-modern-page .tej-editorial-hero__breadcrumb .aioseo-breadcrumb-separator {
	margin: 0;
}

body.tej-modern-page .tej-editorial-hero .entry-title.tej-page-title {
	gap: 10px;
	margin: 0;
}

body.tej-modern-page .tej-editorial-hero .tej-page-title__prefix {
	min-height: 0;
	padding: 0;
	background: transparent;
	color: #3d79ae;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.2;
	text-transform: uppercase;
}

body.tej-modern-page .tej-editorial-hero .tej-page-title__topic {
	color: #0d3765;
	font-size: clamp(2.3rem, 5vw, 3.8rem);
	font-weight: 600;
	line-height: 1.12;
}

body.tej-modern-page .tej-editorial-hero__description {
	margin-top: 16px;
	font-weight: 400;
}

body.tej-modern-page .tej-editorial-hero__cta {
	margin-top: 20px;
}

body.tej-modern-page .tej-hero-benefits {
	gap: 28px;
}

body.tej-modern-page .tej-hero-benefit {
	font-weight: 400;
}

@media screen and (max-width: 900px) {
	body.tej-modern-page .entry-header:has(.tej-editorial-hero) {
		width: calc(100% + 32px);
		margin-left: -16px;
		padding-right: 32px;
		padding-left: 32px;
	}
}

@media screen and (max-width: 600px) {
	body.tej-modern-page .entry-header:has(.tej-editorial-hero) {
		width: calc(100% + 32px);
		margin-left: -16px;
		padding: 30px 32px 28px;
	}

	body.tej-modern-page .tej-editorial-hero__breadcrumb {
		margin-bottom: 13px;
	}

	body.tej-modern-page .tej-hero-benefits {
		gap: 12px;
	}
}

/* Apertura editorial: bloque de lectura suave con guía visual lateral. */
body.tej-modern-page .entry-content .tej-post-hero-intro {
	padding: 28px 30px;
	border: 1px solid #dce6f3;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 3px 13px rgb(21 57 102 / 5%);
}

body.tej-modern-page .entry-content .tej-post-hero-intro p {
	color: #193f67;
}

body.tej-modern-page .entry-content .tej-modern-content-wrapper.tej-visual-polish--pillar-clean > .tej-post-hero-section {
	margin-block-start: 0;
}

body.tej-modern-page .entry-content {
	padding-top: 26px;
}

@media screen and (max-width: 600px) {
	body.tej-modern-page .entry-content {
		padding-top: 22px;
	}

	body.tej-modern-page .entry-content .tej-post-hero-intro {
		padding: 22px 20px;
	}
}

/* Entradas heredadas: una sola columna de lectura, sin lateral de widgets. */
body.wp-singular:not(.tej-modern-page) #primary {
	float: none;
	width: 100%;
}

body.wp-singular:not(.tej-modern-page) #left-sidebar,
body.wp-singular:not(.tej-modern-page) #right-sidebar {
	display: none;
}

/* Imágenes educativas: escala de lectura compacta en escritorio.
 * Los microlotes actuales y futuros reutilizan .tej-educational-visuals. */
@media screen and (min-width: 901px) {
	body.wp-singular .entry-content .tej-educational-visuals {
		width: 100%;
		max-width: 504px;
		margin-inline: auto;
	}

	body.tej-modern-page .entry-content .tej-modern-content-wrapper > :has(+ .tej-educational-visuals) {
		margin-block-end: 24px;
	}
}

/* AdSense de inicio: reserva el espacio antes de que llegue la creatividad. */
.tej-adsense-slot--inicio {
	box-sizing: border-box;
	display: grid;
	width: 336px;
	min-width: 336px;
	max-width: 336px;
	min-height: 280px;
	margin: 32px auto;
	place-items: center;
	overflow: hidden;
}

.tej-adsense-slot--inicio .adsbygoogle {
	display: inline-block !important;
	width: 336px !important;
	height: 280px !important;
}

@media screen and (max-width: 600px) {
	.tej-adsense-slot--inicio {
		margin-block: 26px;
	}
}
