/**
Theme Name: Astra Child
Author: TendenciasFX
Author URI: /
Description: Plantilla personalizada para TendenciasFX, sustituye la plantilla original de Astra y evita perder estilos y funcionalidades al actualizar la plantilla principal Astra.
Version: 1.0.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/* ==========================================================
   TENDENCIASFX - legibilidad del blog (11 septiembre 2026)
   Lleva !important porque Astra inyecta su CSS despues de
   esta hoja y pisa el tamano y el color. Se puede borrar
   entero sin romper nada.
   ========================================================== */

/* 1 - ENLACES: el verde de marca daba 3,08 sobre blanco; el minimo es 4,5.
   Este es el mismo tono, mas oscuro: 4,59. */
.entry-content a:not(.wp-block-button__link) {
  color: #4d8316 !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.entry-content a:not(.wp-block-button__link):hover { color: #3c6711 !important; }

/* El mismo verde aclarado para fondos oscuros: 4,59 sobre la pizarra */
.site-footer a:hover, .ast-footer-overlay a:hover { color: #72c320 !important; }

/* 2 - CUERPO: estaba en 15px y bajaba a 14px en tableta, al reves. */
.entry-content p, .entry-content li {
  font-size: 17px !important;
  line-height: 1.7 !important;
}

/* 3 - TITULOS: el titular iba a 60px contra 15 de texto (4 veces).
   Ahora 40 contra 17, que son 2,35. */
header.entry-header:not(.related-entry-header) .entry-title,
.single .entry-title {
  font-size: 40px !important;
  line-height: 1.2 !important;
}
.entry-content h2 { font-size: 27px !important; line-height: 1.3 !important; margin-top: 1.6em; }

@media (max-width: 921px) {
  header.entry-header:not(.related-entry-header) .entry-title,
  .single .entry-title { font-size: 32px !important; }
  .entry-content h2 { font-size: 24px !important; }
  .entry-content p, .entry-content li { font-size: 17px !important; }
}

/* 4 - MINIATURAS: habia cuatro proporciones y las tarjetas salian con
   seis alturas distintas. Ahora todas iguales. */
.uael-post__thumbnail img {
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
  width: 100% !important;
  height: auto !important;
}

/* 5 - PIE DE FOTO
   No tenia fondo ni separacion, asi que flotaba suelto debajo de la
   imagen. Ahora es una banda pegada a la foto y se lee como parte de ella. */
.entry-content figure.wp-block-image {
  border: 1px solid #d8d8d8;
  background: #efefef;
  margin-bottom: 1.6em;
}
.entry-content figure.wp-block-image img { display: block; margin: 0; }
.entry-content figure.wp-block-image figcaption,
.entry-content .wp-element-caption {
  margin: 0 !important;
  padding: 10px 12px !important;
  background: #f4f4f4;
  border-top: 1px solid #d8d8d8;
  font-size: 14px !important;
  line-height: 1.45 !important;
  color: #52565e !important;
  text-align: left !important;
}

/* 6 - LA TARJETA DEL ARTICULO
   Era blanca sobre un gris casi blanco, sin borde ni sombra, y no se
   despegaba del fondo. Se oscurece un punto la pagina y se le pone
   un filo. Solo en el blog, no en el resto del sitio. */
body.single-post, body.blog, body.archive { background-color: #e9e9e9; }
body.single-post .ast-article-single,
body.single-post article.post,
body.blog .ast-article-post,
body.archive .ast-article-post {
  border: 1px solid #dcdcdc;
  box-shadow: 0 1px 4px rgba(0,0,0,.07);
}

/* 7 - CAJA DE AUTOR
   La pinta tfx_caja_autor() en functions.php, al final de cada entrada. */
.tfx-autor {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  margin: 2.5em 0 0;
  padding: 20px;
  background: #f2f2f2;
  border: 1px solid #dcdcdc;
}
.tfx-autor-foto img {
  display: block;
  width: 84px;
  height: 84px;
  border-radius: 50%;
}
.tfx-autor-texto { flex: 1; min-width: 0; }
.tfx-autor-nombre {
  margin: 0 0 6px !important;
  font-weight: 700;
  font-size: 17px !important;
  color: #2f333a;
}
.tfx-autor-bio {
  margin: 0 0 10px !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: #52565e;
}
.tfx-autor-redes { margin: 0 !important; font-size: 15px !important; }
.tfx-autor-redes a {
  margin-right: 16px;
  font-weight: 600;
}

@media (max-width: 544px) {
  .tfx-autor { flex-direction: column; gap: 12px; }
}

/* 8 - PIE DE PAGINA
   La rejilla estaba fijada a cuatro columnas y no se reordenaba nunca.
   A 768px cada columna se quedaba en 71px: ahi no cabe una palabra
   entera, y el boton salia de 89 de ancho por 150 de alto, o sea con
   el texto de canto. El zoom no lo causaba, solo lo adelantaba.
   Ahora: cuatro columnas en escritorio, dos en tableta, una en movil. */
@media (max-width: 921px) {
  .site-primary-footer-inner-wrap.ast-builder-grid-row {
    grid-template-columns: 1fr 1fr !important;
    row-gap: 30px;
  }
}
@media (max-width: 544px) {
  .site-primary-footer-inner-wrap.ast-builder-grid-row {
    grid-template-columns: 1fr !important;
  }
}

/* El boton nunca parte su texto */
.site-footer .ast-custom-button-link,
.site-footer .ast-custom-button {
  display: inline-block;
  white-space: nowrap;
  min-width: 150px;
  text-align: center;
}

/* Y ninguna palabra se corta por la mitad */
.site-footer .widget,
.site-footer .ast-builder-grid-row > *,
.site-footer a {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* 9 - BOTONES DE LAS REDES EN LA CAJA DE AUTOR
   Antes eran la letra X y la palabra LinkedIn: unos 10px de ancho,
   imposibles de acertar con el dedo. El minimo recomendado para algo
   que se toca es 44x44. Estos son 50x50. */
.tfx-autor-redes { display: flex; gap: 10px; }
.tfx-autor-red {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 6px;
  background: #3e4249;
  color: #ffffff !important;
  text-decoration: none !important;
  transition: background .15s ease;
}
.tfx-autor-red:hover,
.tfx-autor-red:focus { background: #4d8316; color: #ffffff !important; }
.tfx-autor-red svg { display: block; }

/* 10 - CORRECCIONES DEL 11 DE SEPTIEMBRE, SEGUNDA VUELTA */

/* 10a - El icono de las redes salia en verde oscuro sobre pizarra: 2,20
   de contraste. La regla de enlaces le ganaba por especificidad. Ahora
   lleva el verde claro del pie, que da 4,59 sobre ese fondo. */
.entry-content a.tfx-autor-red,
.tfx-autor .tfx-autor-red {
  color: #72c320 !important;
  text-decoration: none !important;
}
.entry-content a.tfx-autor-red:hover,
.tfx-autor .tfx-autor-red:hover {
  background: #72c320;
  color: #2f333a !important;
}

/* 10b - La linea de debajo del titulo. Solo el nombre del autor es un
   enlace; el resto iba en verde sin serlo, y ademas a 3,08. */
.ast-blog-meta-container, .entry-meta, .post-meta,
.ast-blog-meta-container *, .entry-meta *, .post-meta * {
  color: #5a5f67 !important;
}
.ast-blog-meta-container a, .entry-meta a, .post-meta a,
.ast-blog-meta-container a *, .entry-meta a *, .post-meta a * {
  color: #4d8316 !important;
}

/* 10c - La tarjeta tenia 20px de margen interior y el titulo quedaba
   pegado a los tres bordes. */
body.single-post .ast-article-single,
body.single-post article.post { padding: 46px 52px 40px !important; }

@media (max-width: 921px) {
  body.single-post .ast-article-single,
  body.single-post article.post { padding: 32px 28px 28px !important; }
}
@media (max-width: 544px) {
  body.single-post .ast-article-single,
  body.single-post article.post { padding: 24px 20px 20px !important; }
}

/* 11 - TERCERA VUELTA, 11 DE SEPTIEMBRE */

/* 11a - Los botones de redes: menos borde oscuro y el icono mas grande.
   46x46 sigue por encima del minimo de 44 para tocar con el dedo. */
.tfx-autor-red { width: 46px !important; height: 46px !important; }
.tfx-autor-red svg { width: 28px; height: 28px; }

/* 11b - La barra de navegacion medía 137px de alto y se queria en 100.
   CAUSA, medida el 12 de septiembre: no era el logo. La barra llevaba un
   relleno del 2 % arriba y abajo, y ese 2 % se calcula sobre el ANCHO, asi
   que en una pantalla de 1278px eran 23px por lado. 89 de contenido mas 23
   mas 23 daban los 137. La altura minima de 100 no mandaba porque el
   contenido ya la superaba.
   ARREGLO: se quita el relleno proporcional y manda la altura fija, con el
   contenido centrado dentro. */
.ast-primary-header-bar .site-branding img,
.ast-primary-header-bar .custom-logo-link img,
.main-header-bar .custom-logo-link img { max-height: 62px !important; width: auto !important; }

.ast-primary-header-bar,
.main-header-bar {
  min-height: 100px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.ast-primary-header-bar .site-branding {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* En movil y tableta la cabecera tiene que ocupar menos */
@media (max-width: 921px) {
  .ast-primary-header-bar,
  .main-header-bar { min-height: 70px !important; }
  .ast-primary-header-bar .site-branding img,
  .ast-primary-header-bar .custom-logo-link img,
  .main-header-bar .custom-logo-link img { max-height: 46px !important; }
}

/* 11c - En la pagina de autor, la caja estaba capada a 980px y la
   rejilla de abajo mide 1083. Por eso no alineaban. */
.ast-author-box.ast-archive-description {
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 11d - Tarjetas todas a la misma altura, en el blog y en la pagina de autor.
   Iban de 530 a 651 y quedaba desigual. */
.ast-grid-3 > article.post,
.ast-grid-2 > article.post { display: flex; flex-direction: column; }
.uael-post__inner-wrap { height: 100%; display: flex; flex-direction: column; }
.uael-post__content-wrap { flex: 1; display: flex; flex-direction: column; }

/* 11e - (10-10-2026) La parte blanca de las tarjetas empieza justo en el borde
   del contenido, en movil y en ordenador; el margen de -15px descuadraba la caja
   de autor. Sin margen lateral, alinea con las tarjetas. El resto, en el 19. */
body.author .ast-author-box.ast-archive-description {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 12 - CUARTA VUELTA, 12 DE SEPTIEMBRE */

/* 12 - La fecha en las tarjetas de la portada del blog.
   Se encendio la meta en el widget de Elementor, pero venia con dos
   problemas: salia encima del autor y arrastraba «No hay comentarios».
   La tarjeta es una columna flexible, asi que se reordena aqui sin volver
   a tocar Elementor. */
.uael-post__content-wrap { display: flex; flex-direction: column; }
.uael-post__terms-wrap { order: 1; }
.uael-post__title { order: 2; }
.uael-post__separator-wrap { order: 3; }
.uael-post__authorbox-wrapper { order: 4; }
.uael-post__meta-data {
  order: 5;
  margin-top: 10px;
  /* venia en #adadad, que sobre el gris de la tarjeta daba 3,85 de
     contraste y el minimo es 4,5. Con este gris sube a 5,2. */
  color: #c7c7c7 !important;
  font-size: 13px !important;
}

/* Los comentarios no interesan: el blog no los usa */
.uael-post__comments { display: none !important; }

/* 13 - El lightbox del grafico. Es el nativo de WordPress (Ampliar al hacer clic).
   Su boton de cerrar mide 40px; se sube a 46, que es la medida de los demas
   botones del sitio y el minimo comodo para el dedo. */
.wp-lightbox-overlay .wp-lightbox-close-button {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  top: 12px !important;
  right: 12px !important;
}

/* 14 - Relacionados y metadatos, pedido por JH el 12-09-2026.
   El titulo de la tarjeta de relacionados es un h3 que hereda 40px de tamano y
   48px de alto de linea, con el enlace dentro a 20px: por eso las lineas se
   separaban tanto. Se fija el tamano en el h3 y el enlace lo hereda.
   Y todo lo que no es articulo ni titulo (autor, fecha, tiempo de lectura,
   Leer mas) va en cursiva, en el articulo, en relacionados y en el blog. */
.ast-related-post-title.entry-title {
  font-size: 22px !important;
  line-height: 1.3 !important;
  margin-bottom: 12px !important;
}
.ast-related-post-title.entry-title a {
  font-size: inherit !important;
  line-height: inherit !important;
}
.entry-meta,
.entry-meta a,
.ast-related-post-cta,
.ast-related-post-cta a,
.read-more a,
.ast-read-more-container a,
.uael-post__meta-data,
.uael-post__authorbox-desc,
.uael-post__authorbox-name,
.uael-post__authorbox-name a {
  font-style: italic !important;
}









/* =====================================================================
   15. ESPACIADO: MOVIL, CAJA DE AUTOR, CABECERA Y PIE (12-09-2026)
   Medido en 320, 360, 390, 412, 768 y 1280 px antes de aplicarlo.
   ===================================================================== */

/* 15.1 Movil: el marco de Astra pasaba de 50 px por lado a 20 y a 10 */
@media (max-width: 921px) {
  body.ast-padded-layout { padding: 20px !important; }
}
@media (max-width: 544px) {
  body.ast-padded-layout { padding: 14px 10px !important; }
}

/* 15.2 Caja de autor: la foto a todo lo alto y las redes discretas */
@media (min-width: 600px) {
  aside.tfx-autor { align-items: stretch !important; }
  aside.tfx-autor .tfx-autor-foto { flex: 0 0 160px !important; width: 160px !important; height: auto !important; position: relative !important; }
  aside.tfx-autor .tfx-autor-foto img { position: absolute !important; top: 0; left: 0; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; object-position: center 30% !important; border-radius: 8px !important; }
}
aside.tfx-autor .tfx-autor-redes .tfx-autor-red { width: 28px !important; height: 28px !important; min-width: 0 !important; border-radius: 5px !important; }
aside.tfx-autor .tfx-autor-redes .tfx-autor-red svg { width: 15px !important; height: 15px !important; }

/* 15.3 Cabecera y pie */
@media (min-width: 922px) {
  .ast-primary-header-bar.main-header-bar { min-height: 80px !important; height: 80px !important; }
  #primary.content-area { margin-top: 25px !important; margin-bottom: 25px !important; }
  .site-primary-footer-wrap { padding: 40px 48px 36px !important; }
  .site-primary-footer-wrap .site-primary-footer-inner-wrap { grid-template-columns: repeat(4, 1fr) !important; column-gap: 40px !important; padding: 0 !important; }
}
.site-below-footer-wrap { padding: 12px 0 !important; min-height: 0 !important; }
.site-below-footer-wrap .site-below-footer-inner-wrap { min-height: 0 !important; align-items: center !important; }
.site-footer-primary-section-1 p br, .site-footer-primary-section-2 p br, .site-footer-primary-section-3 p br { display: none !important; }
.site-footer-primary-section-1 p a, .site-footer-primary-section-2 p a, .site-footer-primary-section-3 p a { display: block !important; line-height: 1.3 !important; margin: 0 0 6px !important; }
@media (max-width: 921px) {
  #primary.content-area { margin-top: 16px !important; margin-bottom: 16px !important; }
  .site-primary-footer-wrap { padding: 28px 32px 24px !important; }
  .site-primary-footer-wrap .site-primary-footer-inner-wrap { grid-template-columns: 1fr 1fr !important; column-gap: 24px !important; row-gap: 24px !important; padding: 0 !important; }
}
@media (max-width: 544px) {
  .site-primary-footer-wrap { padding: 24px 20px 20px !important; }
  .site-primary-footer-wrap .site-primary-footer-inner-wrap { column-gap: 16px !important; row-gap: 22px !important; }
  .site-primary-footer-wrap .site-footer-primary-section-3,
  .site-primary-footer-wrap .site-footer-primary-section-4 { grid-column: 1 / -1 !important; }
  .site-footer-primary-section-4 .ast-footer-social-wrap,
  .site-footer-primary-section-4 .footer-widget-area { margin-top: 8px !important; margin-bottom: 8px !important; }
}

/* 15.4 Caja de autor: el mismo hueco (18 px) entre la foto y el texto que entre los dos botones */
aside.tfx-autor .tfx-autor-redes { gap: 18px !important; }
aside.tfx-autor .tfx-autor-redes .tfx-autor-red { margin: 0 !important; }

/* =====================================================================
   16 - PAGINAS HECHAS CON ELEMENTOR. Pedido por JH el 16-09-2026.
   Version 2, de la misma noche. SUSTITUYE al apartado 16 anterior entero:
   borrar desde la linea "16 - PAGINAS HECHAS CON ELEMENTOR" hasta el final
   del fichero y pegar esto. Se puede borrar entero sin romper nada.
   ===================================================================== */

/* 16.1 EL RECORTE DE 50 PX. Las secciones "estiradas" de Elementor se
   calculaban con JavaScript al ancho de la ventana entera, pero la caja
   blanca de Astra (#page, con overflow hidden) empieza 50 px mas adentro,
   asi que cada seccion perdia 50 px por cada lado: titulos cortados y
   textos pegados al borde. Ahora la seccion mide lo que mide la caja, sin
   JavaScript, y por eso tampoco se rompe al girar el movil o cambiar la
   ventana de tamano. Solo afecta a las paginas de Elementor. */
body.elementor-page #content .ast-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.elementor-page .elementor-section-stretched {
  left: 0 !important;
  width: 100% !important;
}

/* 16.1b EL TITULO CORTADO POR ARRIBA (Fases, Mentoria y otras doce). La
   primera fila de cada pagina llevaba un margen negativo (-2 % a -4 %, o
   -3em) para pegarse a la cabecera de Astra, y se metia hasta 44 px por
   debajo de ella: el titulo salia cortado. Ahora empieza justo donde acaba
   la cabecera. Son las catorce secciones con margen negativo que hay en las
   paginas de Elementor, medidas por la API el 16-09-2026. */
.elementor-13659 .elementor-element-96f6aae,
.elementor-13659 .elementor-element-489e3cc,
.elementor-13002 .elementor-element-b54de9f,
.elementor-4268 .elementor-element-3b8df45,
.elementor-4266 .elementor-element-6cbefa3,
.elementor-4265 .elementor-element-54751ca,
.elementor-4191 .elementor-element-6dc5225,
.elementor-3888 .elementor-element-dea1daf,
.elementor-3860 .elementor-element-7fa69ce,
.elementor-3664 .elementor-element-12992f0,
.elementor-3659 .elementor-element-3897a8cb,
.elementor-218  .elementor-element-66e940b,
.elementor-210  .elementor-element-aeb65b2,
.elementor-142  .elementor-element-7bdb963,
.elementor-2909 .elementor-element-7496f7f {
  margin-top: 0 !important;
}

/* 16.1c VIDEOTECA (pagina 3664): dos listas por fila (JH, 16-09-2026, antes
   eran cuatro y se probo con tres); en movil Elementor ya las pone de una
   en una. */
@media (min-width: 768px) {
  .elementor-3664 .elementor-element-7b423bb > .elementor-container,
  .elementor-3664 .elementor-element-71a7019 > .elementor-container { flex-wrap: wrap; }
  .elementor-3664 .elementor-element-7b423bb > .elementor-container > .elementor-column,
  .elementor-3664 .elementor-element-71a7019 > .elementor-container > .elementor-column { width: 50% !important; }
}

/* 16.1d BLOG (pagina 3659): tres entradas por fila en vez de cuatro. El
   widget de UAEL trae las columnas fijadas a 25 % en escritorio; en tableta
   ya va a dos y en movil a una, eso no se toca. */
@media (min-width: 1025px) {
  .elementor-3659 .uael-post__columns-4 .uael-post-wrapper { width: 33.3333% !important; }
}

/* 16.1e MENTORIA, pestanas del contenido del programa (widget 1146e8a): la
   caja cambiaba de alto con cada pestana (8, 15 y 10 filas). Se fija a la
   altura de la de 15 filas, la F2-Analista, y se quita el hueco que dejaba
   el parrafo debajo de la ultima fila. Si una lista crece, la caja crece. */
.elementor-3860 .elementor-element-1146e8a .elementor-tab-content p { margin-bottom: 0 !important; }
@media (min-width: 768px) {
  .elementor-3860 .elementor-element-1146e8a .elementor-tab-content { min-height: calc(15 * 1.65em + 40px); }
}
/* En movil (menos de 768) Elementor convierte las pestanas en acordeon: las tres
   cabeceras van una debajo de otra y solo se abre la pulsada. Ahi la altura
   fija sobraba: dejaba un hueco oscuro de 200 px y las otras dos cabeceras
   quedaban tan abajo que parecian otra cosa (JH, 17-09-2026). */
/* Y las cabeceras cerradas del acordeon iban en el mismo gris que el fondo
   (#474C55 sobre #474C55): estaban, pero no se veian. En movil van en blanco
   con una linea fina encima; la abierta sigue en verde. */
@media (max-width: 767px) {
  .elementor-3860 .elementor-element-1146e8a .elementor-tab-mobile-title {
    color: #fff !important;
    border-top: 1px solid rgba(255, 255, 255, .18) !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  .elementor-3860 .elementor-element-1146e8a .elementor-tab-mobile-title.elementor-active { color: #82c341 !important; }
  .elementor-3860 .elementor-element-1146e8a .elementor-tab-mobile-title:first-of-type { border-top: 0 !important; }
}

/* 16.2 VIDEOS. La foto de portada de cada video lleva el tinte verde o gris
   metido en el propio JPG (no era un filtro de CSS que se pudiera quitar),
   asi que se atenua con el filtro contrario en la portada y en el aula: la
   foto se lee y el color de marca sigue ahi, mas suave. */
.elementor-3860 .elementor-widget-video .elementor-custom-embed-image-overlay,
.elementor-210  .elementor-widget-video .elementor-custom-embed-image-overlay {
  filter: saturate(.45) contrast(1.15) brightness(1.05);
}

/* Que se vea que es un video: boton de reproducir grande, como el de
   YouTube, con sombra para que se lea sobre cualquier foto. */
.elementor-widget-video .elementor-custom-embed-image-overlay .elementor-custom-embed-play i {
  font-size: min(72px, 18vw) !important;
  color: #fff !important;
  text-shadow: 0 2px 14px rgba(0, 0, 0, .6) !important;
}
.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i {
  color: #82c341 !important;
}

/* La duracion abajo a la derecha y el titulo arriba a la izquierda, como en
   YouTube. Van escritos aqui por video (Elementor gratis no deja poner
   atributos propios). Si se cambia un video, se cambia su linea. */
.elementor-widget-video .elementor-custom-embed-image-overlay::before,
.elementor-widget-video .elementor-custom-embed-image-overlay::after {
  position: absolute;
  z-index: 2;
  color: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  font-weight: 600;
  line-height: 1;
  pointer-events: none;
}
.elementor-widget-video .elementor-custom-embed-image-overlay::after {
  right: 10px;
  bottom: 10px;
  padding: 4px 6px;
  font-size: 12px;
  letter-spacing: .3px;
  background: rgba(0, 0, 0, .8);
  border-radius: 3px;
}
.elementor-widget-video .elementor-custom-embed-image-overlay::before {
  left: 0;
  right: 0;
  top: 0;
  padding: 12px 14px 28px;
  font-size: 15px;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .6);
  background: linear-gradient(rgba(0, 0, 0, .55), rgba(0, 0, 0, 0));
}
@media (max-width: 544px) {
  .elementor-widget-video .elementor-custom-embed-image-overlay::before { font-size: 13px; padding: 10px 12px 22px; }
}

/* Duraciones (medidas en YouTube el 16-09-2026) */
.elementor-element-afa44db .elementor-custom-embed-image-overlay::after { content: "2:15"; }     /* Mentoria: experiencias */
.elementor-element-6e87c0a .elementor-custom-embed-image-overlay::after { content: "22:26"; }    /* Mentoria: primera leccion */
.elementor-element-9ba7625 .elementor-custom-embed-image-overlay::after { content: "6:55"; }     /* Mentoria: preguntas frecuentes */
.elementor-element-3028174 .elementor-custom-embed-image-overlay::after { content: "46:20"; }    /* Curso de trading 1/3 */
.elementor-element-f51fce1 .elementor-custom-embed-image-overlay::after { content: "1:19:33"; }  /* Curso de trading 2/3 */
.elementor-element-6eaff77 .elementor-custom-embed-image-overlay::after { content: "1:03:51"; }  /* Curso de trading 3/3 */
.elementor-element-a5dbaae .elementor-custom-embed-image-overlay::after { content: "3:45"; }     /* Becas: seleccion */
.elementor-element-7e8d3a2 .elementor-custom-embed-image-overlay::after { content: "5:14"; }     /* Becas: post-seleccion */
.elementor-element-01a8bc5 .elementor-custom-embed-image-overlay::after { content: "0:43"; }     /* Portada: que es TendenciasFX */
.elementor-element-5630e10 .elementor-custom-embed-image-overlay::after { content: "38:11"; }    /* Portada: aula */
.elementor-element-1f4f943 .elementor-custom-embed-image-overlay::after { content: "4:20"; }     /* Afiliados */

/* Titulos, solo donde el video no tiene ya un titulo pegado encima */
.elementor-element-afa44db .elementor-custom-embed-image-overlay::before { content: "Experiencias de la mentoría"; }
.elementor-element-6e87c0a .elementor-custom-embed-image-overlay::before { content: "Primera lección · Origen arbitrario (1/15)"; }
.elementor-element-9ba7625 .elementor-custom-embed-image-overlay::before { content: "Preguntas frecuentes de la mentoría"; }
.elementor-element-a5dbaae .elementor-custom-embed-image-overlay::before { content: "Becas · Proceso de selección"; }
.elementor-element-7e8d3a2 .elementor-custom-embed-image-overlay::before { content: "Becas · Después de la selección"; }
.elementor-element-01a8bc5 .elementor-custom-embed-image-overlay::before { content: "¿Qué es TendenciasFX?"; }
.elementor-element-5630e10 .elementor-custom-embed-image-overlay::before { content: "Una clase en el aula de la academia"; }
.elementor-element-1f4f943 .elementor-custom-embed-image-overlay::before { content: "Programa de afiliados"; }

/* 16.3 MENTORIA: el boton viejo de "Suscribirme" se esconde. El formulario
   de pago que abre sigue en la pagina; ahora lo abren los botones de la
   tabla nueva. */
.elementor-element-57c438a .regform-button { display: none !important; }

/* 16.4 MENTORIA: LA TABLA DE PRECIOS (version 2). Un solo servicio, tres
   opciones. En PC y tableta, una tabla con la columna de caracteristicas una
   sola vez; en movil, tres tarjetas. Las explicaciones van en desplegables. */
.tfx-p2 {
  max-width: 1140px;
  margin: 0 auto;
  padding: 8px 16px 24px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color: #4b4f58;
}
.tfx-p2 .tfx-p2__check {
  display: inline-block;
  width: 22px;
  height: 22px;
  vertical-align: middle;
  fill: none;
  stroke: #2e7d32;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.tfx-p2__nombre {
  display: block;
  font-family: Oswald, sans-serif;
  font-size: 19px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: .4px;
  text-transform: uppercase;
  color: #82c341;
}
.tfx-p2__cuota {
  display: block;
  margin-top: 4px;
  font-family: Oswald, sans-serif;
  font-size: 30px;
  line-height: 1;
  font-weight: 500;
  color: #fff;
}
.tfx-p2__cuota small,
.tfx-p2__real small,
.tfx-p2__total-m small { font-size: 13px; font-weight: 400; color: #d5d8dc; margin-left: 2px; }
.tfx-p2__cinta {
  display: inline-block;
  margin-bottom: 6px;
  padding: 3px 9px;
  border-radius: 3px;
  background: #82c341;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}

/* El desplegable de cada caracteristica */
.tfx-p2__det summary {
  cursor: pointer;
  list-style: none;
  font-weight: 600;
  color: #4b4f58;
  padding-left: 18px;
  position: relative;
}
.tfx-p2__det summary::-webkit-details-marker { display: none; }
.tfx-p2__det summary::before {
  content: "";
  position: absolute;
  left: 3px;
  top: .45em;
  width: 7px;
  height: 7px;
  border-right: 2px solid #82c341;
  border-bottom: 2px solid #82c341;
  transform: rotate(-45deg);
  transition: transform .15s;
}
.tfx-p2__det[open] summary::before { transform: rotate(45deg); top: .3em; }
.tfx-p2__det summary:hover { color: #2e7d32; }
.tfx-p2__det p {
  margin: 6px 0 2px 18px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  font-style: italic;
  color: #6b7079;
}

/* --- la tabla --- */
.tfx-p2__tabla {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid #e1e4e8;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 6px 24px rgba(30, 35, 40, .08);
  background: #fff;
  font-size: 15px;
  line-height: 1.35;
}
.tfx-p2__tabla th,
.tfx-p2__tabla td {
  padding: 11px 14px;
  border: 0;
  border-bottom: 1px solid #edf0f2;
  text-align: center;
  vertical-align: middle;
}
.tfx-p2__tabla td:first-child,
.tfx-p2__tabla th:first-child { text-align: left; width: 40%; }
.tfx-p2__tabla thead th {
  background: #54595f;
  color: #fff;
  padding: 22px 14px 20px;
  vertical-align: bottom;
  border-bottom: 0;
}
.tfx-p2__th-servicio {
  font-family: Oswald, sans-serif;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: .5px;
  color: #d5d8dc !important;
}
.tfx-p2__th--destacada { background: #474c55 !important; box-shadow: inset 0 4px 0 #82c341; }
.tfx-p2__tabla tbody tr:nth-child(even) td { background: #fafbfc; }
.tfx-p2__tabla tbody td { font-weight: 500; }
.tfx-p2__tabla .tfx-p2__acapite td {
  background: #f1f3f5 !important;
  padding: 9px 14px 7px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  text-align: left;
  color: #7a7f87;
}
.tfx-p2__tabla .tfx-p2__req td { background: #f7f8fa !important; }
.tfx-p2__tabla .tfx-p2__no { color: #c3c7cc; font-weight: 400; }
.tfx-p2__tabla tfoot td { background: #fff; }
.tfx-p2__tabla .tfx-p2__total td {
  border-top: 2px solid #e1e4e8;
  padding-top: 16px;
  font-size: 18px;   /* era 15: el tachado no dejaba leer los numeros (JH, 17-09-2026) */
  color: #7a7f87;
}
.tfx-p2__tabla .tfx-p2__total td:first-child { font-weight: 700; text-transform: uppercase; letter-spacing: .6px; font-size: 12px; }
.tfx-p2__tabla .tfx-p2__total s {
  text-decoration: line-through;
  text-decoration-color: #d9534f;
  text-decoration-thickness: 1.5px;
  font-weight: 600;
  color: #4b4f58;
}
.tfx-p2__tabla .tfx-p2__real td {
  font-family: Oswald, sans-serif;
  font-size: 32px;
  line-height: 1;
  color: #2e7d32;
  padding-top: 4px;
  padding-bottom: 12px;
  border-bottom: 0;
}
.tfx-p2__tabla .tfx-p2__real td:first-child {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  font-size: 13px;
  color: #7a7f87;
  vertical-align: bottom;
  padding-bottom: 18px;
}
.tfx-p2__tabla .tfx-p2__real small { color: #7a7f87; }
.tfx-p2__tabla .tfx-p2__botones td { padding: 0 14px 22px; border-bottom: 0; }
.tfx-p2__tabla .tfx-p2__th--destacada ~ th { }

/* --- el boton --- */
.tfx-p2__boton,
.tfx-p2__boton.regform-button {
  display: inline-block;
  width: 100%;
  max-width: 240px;
  padding: 12px 16px;
  background: #82c341;
  color: #fff !important;
  font: 600 14px/1.2 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  text-align: center;
  text-decoration: none;
  border: 0;
  border-radius: 6px;
  cursor: pointer;
  transition: background .15s;
}
.tfx-p2__boton:hover { background: #6fae33; color: #fff; }
.tfx-p2__boton--gris,
.tfx-p2__boton--gris:hover { background: #a9adb3; cursor: default; }

/* --- las tarjetas (movil) --- */
.tfx-p2__tarjetas { display: none; }
.tfx-p2__tarjeta {
  position: relative;
  background: #fff;
  border: 1px solid #e1e4e8;
  border-radius: 10px;
  box-shadow: 0 6px 24px rgba(30, 35, 40, .08);
  overflow: hidden;
  margin: 0 0 20px;
  font-size: 14px;
}
.tfx-p2__tarjeta--destacada { border-color: #82c341; }
.tfx-p2__tarjeta .tfx-p2__cinta { position: absolute; top: 10px; right: 10px; margin: 0; }
.tfx-p2__cab { display: block; background: #54595f; padding: 22px 16px 18px; text-align: center; }
.tfx-p2__cab .tfx-p2__cuota { font-size: 36px; margin-top: 8px; }
.tfx-p2__acapite-m {
  margin: 0 !important;
  padding: 10px 16px 6px;
  background: #f1f3f5;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #7a7f87;
}
.tfx-p2__fila {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding: 9px 16px;
  border-top: 1px solid #edf0f2;
}
.tfx-p2__fila > span, .tfx-p2__fila > details { flex: 1 1 auto; min-width: 0; }
.tfx-p2__fila > b { flex: 0 0 auto; font-weight: 600; color: #4b4f58; white-space: nowrap; }
.tfx-p2__acapite-m + .tfx-p2__fila { border-top: 0; }
.tfx-p2__total-m {
  margin: 8px 16px 0;
  padding: 14px 0 6px;
  border-top: 2px solid #e1e4e8;
  text-align: center;
}
.tfx-p2__total-m span { display: block; font-size: 17px; color: #7a7f87; }
.tfx-p2__total-m s { text-decoration: line-through; text-decoration-color: #d9534f; text-decoration-thickness: 1.5px; font-weight: 600; color: #4b4f58; }
.tfx-p2__total-m strong { display: block; margin-top: 6px; font-family: Oswald, sans-serif; font-size: 34px; line-height: 1.1; font-weight: 500; color: #2e7d32; }
.tfx-p2__total-m small { color: #7a7f87; }
.tfx-p2__pie { display: block; padding: 12px 16px 20px; text-align: center; }
.tfx-p2__pie .tfx-p2__boton { max-width: 300px; }

@media (max-width: 1024px) {
  .tfx-p2__tabla { font-size: 14px; }
  .tfx-p2__tabla th, .tfx-p2__tabla td { padding: 10px 10px; }
  .tfx-p2__cuota { font-size: 26px; }
  .tfx-p2__nombre { font-size: 16px; }
  .tfx-p2__tabla .tfx-p2__real td { font-size: 26px; }
}
@media (max-width: 767px) {
  .tfx-p2 { padding: 0 0 16px; }
  .tfx-p2__tabla { display: none; }
  .tfx-p2__tarjetas { display: block; max-width: 520px; margin: 0 auto; }
}

/* 16.5 MENTORIA: EL CARRUSEL DE RESENAS DE FACEBOOK. Una a la vez. */
.tfx-resenas {
  max-width: 560px;
  margin: 0 auto;
  padding: 0 16px 8px;
  text-align: center;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.tfx-resenas__titulo {
  font-family: Oswald, sans-serif !important;
  font-size: 30px !important;
  line-height: 1.15 !important;
  font-weight: 400 !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #4b4f58 !important;
  margin: 0 0 6px !important;
}
.tfx-resenas__sub {
  margin: 0 0 18px;
  font-size: 14px;
  color: #7a7f87;
}
.tfx-resenas__sub a { color: #2e7d32; text-decoration: underline; }
.tfx-resenas__marco { position: relative; }
/* La resena mas alta mide 342 px (la de Jesus Irizo); las demas van de 246 a
   323. Se fija la pista a esa altura para que las flechas y los puntos no
   salten al cambiar de resena (JH, 17-09-2026). */
.tfx-resenas__pista { min-height: 342px; }
.tfx-resenas__item iframe { display: block; }
.tfx-resenas__item { display: none; }
.tfx-resenas__item.activa { display: block; animation: tfxFundido .35s ease; }
@keyframes tfxFundido { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.tfx-resenas__item iframe,
.tfx-resenas__item .fb-post,
.tfx-resenas__item .fb-post span,
.tfx-resenas__item .fb-post iframe {
  max-width: 100% !important;
  margin: 0 auto;
}
.tfx-resenas__flecha {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 50%;
  background: #54595f;
  color: #fff;
  font-size: 22px;
  line-height: 42px;
  text-align: center;
  cursor: pointer;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .2);
  transition: background .15s;
  padding: 0;
}
.tfx-resenas__flecha:hover { background: #82c341; }
.tfx-resenas__flecha--ant { left: -56px; }
.tfx-resenas__flecha--sig { right: -56px; }
.tfx-resenas__puntos { margin: 14px 0 0; display: flex; justify-content: center; gap: 8px; }
.tfx-resenas__punto {
  width: 10px;
  height: 10px;
  border: 0;
  border-radius: 50%;
  background: #d5d8dc;
  cursor: pointer;
  padding: 0;
}
.tfx-resenas__punto.activa { background: #82c341; }
/* En movil no hay sitio a los lados: las flechas bajan debajo de la resena */
@media (max-width: 720px) {
  .tfx-resenas__marco { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
  .tfx-resenas__pista { flex: 0 0 100%; order: -1; }
  .tfx-resenas__flecha { position: static; transform: none; width: 38px; height: 38px; line-height: 38px; font-size: 20px; }
  .tfx-resenas__puntos { margin-top: 10px; }
}

/* 16.6 MIEMBROS, RECUPERAR CONTRASENA Y DATE DE ALTA (17-09-2026): el verde
   de las fotos de fondo va grabado en los propios JPG (img_videoteca_02 e
   img_tradingDateAlta: el 93-95 % de sus pixeles son verdes), no es una capa
   de Elementor que se pueda bajar. Se atenua con un cristal encima del fondo
   (backdrop-filter) que quita saturacion solo a la foto; el texto y los
   formularios quedan por encima, sin tocar. */
.elementor-436  .elementor-element-3c9fb97f::before,
.elementor-459  .elementor-element-3b1d6e2b::before,
.elementor-3868 .elementor-element-413a3bc8::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  -webkit-backdrop-filter: saturate(.35) contrast(1.1) brightness(1.05);
  backdrop-filter: saturate(.35) contrast(1.1) brightness(1.05);
}
.elementor-436  .elementor-element-3c9fb97f > .elementor-container,
.elementor-459  .elementor-element-3b1d6e2b > .elementor-container,
.elementor-3868 .elementor-element-413a3bc8 > .elementor-container {
  position: relative;
  z-index: 1;
}


/* =====================================================================
   17 - SUSCRIPCION A LOS ARTICULOS (Brevo). JH, 09-10-2026, version 2.
   En las entradas va dentro de la caja de autor, debajo de las redes, en una
   linea corta; fuera de las entradas, una franja sobre el pie con la misma
   pinta que la caja de autor (gris #f2f2f2, borde #dcdcdc, botones #3e4249
   con verde #72c320). La pinta functions.php (tfx_caja_suscripcion). Se puede
   borrar entero sin romper nada: el formulario sigue funcionando.
   ===================================================================== */
.tfx-suscripcion .tfx-susc-titulo { display: block !important; margin: 0 0 6px !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1.35 !important; color: #2f333a !important; }
.tfx-suscripcion .tfx-susc-fila { display: flex !important; gap: 8px !important; flex-wrap: wrap !important; align-items: center !important; }
.tfx-suscripcion .tfx-susc-campo { flex: 0 1 230px !important; min-width: 0 !important; height: 32px !important; margin: 0 !important; padding: 4px 10px !important; font-size: 14px !important; color: #2f333a !important; background: #ffffff !important; border: 1px solid #dcdcdc !important; border-radius: 5px !important; box-shadow: none !important; }
.tfx-suscripcion .tfx-susc-boton { flex: 0 0 auto !important; display: inline-flex !important; align-items: center !important; height: 32px !important; margin: 0 !important; padding: 0 12px !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1 !important; color: #72c320 !important; background: #3e4249 !important; border: 0 !important; border-radius: 5px !important; cursor: pointer !important; }
.tfx-suscripcion .tfx-susc-boton:hover { background: #2f333a !important; }
.tfx-suscripcion .progress-indicator__icon { width: 14px !important; height: 14px !important; margin-right: 6px !important; fill: currentColor !important; animation: tfx-susc-gira 1s linear infinite; }
.tfx-suscripcion .sib-hide-loader-icon { display: none !important; }
@keyframes tfx-susc-gira { to { transform: rotate(360deg); } }
.tfx-suscripcion .entry__error { display: block !important; margin-top: 4px !important; font-size: 13px !important; color: #b3261e !important; }
.tfx-suscripcion .entry__error:empty { display: none !important; }
.tfx-suscripcion .input--hidden { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.tfx-suscripcion .sib-form-message-panel { display: none; margin: 0 0 8px !important; padding: 6px 10px !important; font-size: 14px !important; border-radius: 5px !important; }
.tfx-suscripcion .tfx-susc-ok { background: #e8f4dc !important; color: #2e5d10 !important; }
/* El script de Brevo enciende el aviso con esta clase (no con display): sin esto no se ve nada */
.tfx-suscripcion .sib-form-message-panel--active { display: block !important; }
.tfx-suscripcion .tfx-susc-ok.sib-form-message-panel--active { font-weight: 600 !important; border-left: 4px solid #72c320 !important; }
.tfx-suscripcion .tfx-susc-error { background: #fbe9e7 !important; color: #8c1d18 !important; }
/* Dentro de la caja de autor: separada de las redes por el mismo hueco (18 px) */
aside.tfx-autor .tfx-suscripcion-bio { margin: 18px 0 0 !important; }
/* Franja sobre el pie y, si alguna vez sale suelta, la misma pinta que la caja de autor */
.tfx-suscripcion-pie { width: 100% !important; max-width: 520px !important; box-sizing: border-box !important; margin: 0 auto !important; padding: 8px 20px 28px !important; }
.tfx-suscripcion-franja, .tfx-suscripcion-suelta { margin: 24px 0 0 !important; padding: 20px !important; background: #f2f2f2 !important; border: 1px solid #dcdcdc !important; border-radius: 0 !important; }
@media (max-width: 544px) {
  .tfx-suscripcion .tfx-susc-campo { flex: 1 1 100% !important; }
}


/* 18 - CURSOS (JH, 09-10-2026): el aula del Curso de Bolsa, al estilo de
   Coursera con los colores de TendenciasFX. Temario al lado en pantalla
   ancha y arriba en movil, migas, barra de avance, tarjetas de lecciones y
   botones como los de la portada (gris oscuro, dorado al pasar el raton).
   Todo cuelga de clases tfx-*: se puede borrar entero sin romper nada. */
.tfx-migas { font-size: 14px !important; color: #6b7079 !important; margin: 0 0 14px !important; }
.entry-content .tfx-migas a { color: #474c56 !important; text-decoration: none !important; }
.entry-content .tfx-migas a:hover { color: #81c341 !important; }
.tfx-migas .sep { margin: 0 6px; color: #a0a4ab; }
.tfx-chip { display: inline-block !important; margin: 0 0 12px !important; padding: 4px 12px !important; background: #ecedee !important; color: #474c56 !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: .03em; border-radius: 0 !important; }
.tfx-progreso { margin: 0 0 26px !important; }
.tfx-barra { height: 8px; background: #ecedee; overflow: hidden; }
.tfx-barra span { display: block; height: 100%; background: #81c341; }
.tfx-aula { display: flex; flex-direction: column; }
.tfx-aula > .tfx-temario { order: 2; margin: 32px 0 0; }
.tfx-temario { margin: 0 0 28px; padding: 18px 20px; background: #f6f6f7; border-left: 4px solid #81c341; }
.tfx-temario-cab { margin: 0 0 10px !important; font-size: 14px !important; line-height: 1.4 !important; }
.entry-content .tfx-temario-cab a { color: #6b7079 !important; text-decoration: none !important; }
.tfx-temario ol { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.tfx-temario li { margin: 0 !important; }
.entry-content .tfx-temario li a { display: flex; gap: 10px; align-items: baseline; padding: 7px 0; color: #474c56 !important; text-decoration: none !important; font-size: 15px; line-height: 1.35; border-top: 1px solid #e3e4e6; }
.entry-content .tfx-temario li a:hover { color: #81c341 !important; }
.tfx-temario .num { flex: 0 0 24px; height: 24px; line-height: 24px; text-align: center; background: #ecedee; color: #474c56; font-size: 13px; font-weight: 700; }
.entry-content .tfx-temario li.actual a { font-weight: 700; color: #2f323a !important; }
.tfx-temario li.actual .num { background: #f9c20a; color: #2f323a; }
.tfx-temario-pie { margin: 12px 0 0 !important; font-size: 14px !important; }
.entry-content .tfx-temario-pie a { color: #474c56 !important; }
@media (min-width: 1100px) {
  .tfx-aula { display: grid !important; grid-template-columns: 270px minmax(0, 1fr); gap: 44px; align-items: start; }
  .tfx-aula > .tfx-temario { order: 0; position: sticky; top: 110px; margin: 0; }
}
.tfx-boton, .entry-content a.tfx-boton { display: inline-block !important; padding: 14px 26px !important; background: #474c56 !important; color: #f9c20a !important; font-family: Quicksand, sans-serif !important; font-size: 16px !important; font-weight: 600 !important; letter-spacing: .04em; text-decoration: none !important; border-radius: 0 !important; transition: background .2s, color .2s; }
.tfx-boton:hover, .entry-content a.tfx-boton:hover { background: #f9c20a !important; color: #474c56 !important; }
.tfx-sigue { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin: 40px 0 0; padding-top: 24px; border-top: 1px solid #e3e4e6; }
.tfx-sigue .tfx-boton { flex: 1 1 260px; text-align: center; }
.entry-content .tfx-sigue a.ant { background: #ecedee !important; color: #474c56 !important; }
.entry-content .tfx-sigue a.ant:hover { background: #f9c20a !important; }
.tfx-centro { text-align: center !important; margin: 22px 0 !important; }
.tfx-lecciones { list-style: none !important; margin: 0 0 10px !important; padding: 0 !important; }
.tfx-lecciones li { margin: 0 0 12px !important; }
.entry-content .tfx-lecciones a { display: flex; gap: 16px; align-items: flex-start; padding: 16px 18px; background: #fff; border: 1px solid #e3e4e6; border-left: 4px solid #81c341; color: #474c56 !important; text-decoration: none !important; transition: border-color .2s, box-shadow .2s; }
.tfx-lecciones a:hover { border-left-color: #f9c20a; box-shadow: 0 4px 14px rgba(0,0,0,.07); }
.tfx-lecciones .num { flex: 0 0 36px; height: 36px; line-height: 36px; text-align: center; background: #474c56; color: #f9c20a; font-weight: 700; }
.tfx-lecciones strong { display: block; font-size: 17px; color: #2f323a; margin-bottom: 4px; }
.tfx-lecciones small { display: block; font-size: 14px; line-height: 1.45; color: #6b7079; }
.tfx-modulos { display: grid; gap: 16px; grid-template-columns: 1fr; margin: 0 0 10px; }
@media (min-width: 768px) { .tfx-modulos { grid-template-columns: 1fr 1fr; } }
.tfx-modulo { padding: 20px 22px; background: #fff; border: 1px solid #e3e4e6; border-top: 4px solid #81c341; }
.tfx-modulo h3 { margin: 0 0 8px !important; font-size: 20px !important; }
.entry-content .tfx-modulo h3 a { color: #2f323a !important; text-decoration: none !important; }
.entry-content .tfx-modulo h3 a:hover { color: #81c341 !important; }
.tfx-modulo p { margin: 0 0 10px !important; font-size: 15px !important; color: #5a5f68 !important; }
.tfx-modulo ol { margin: 0 0 0 20px !important; padding: 0 !important; font-size: 15px; }
.entry-content .tfx-modulo ol a { color: #474c56 !important; }
.tfx-modulo.pronto { border-top-color: #c9cbcf; background: #fafafa; }
.tfx-modulo.pronto h3 { color: #8a8e95 !important; }

/* 18.2 PORTADA: las tres placas de "Cursos gratuitos de introduccion"
   (Especulacion, Inversion y Videoteca), con el formato de las tarjetas del
   blog: foto arriba, titulo, datos, el recuadro gris oscuro con el autor y la
   duracion, los modulos con su enlace y el boton de la casa abajo. */
.tfx-cursos { display: grid; grid-template-columns: 1fr; gap: 24px; max-width: 1140px; margin: 0 auto; }
@media (min-width: 900px) { .tfx-cursos { grid-template-columns: repeat(3, 1fr); } }
.tfx-curso { display: flex; flex-direction: column; background: #fff; box-shadow: 0 1px 4px rgba(0,0,0,.08); }
.tfx-curso-foto { display: block; aspect-ratio: 3 / 2; overflow: hidden; }
.tfx-curso-foto img { display: block; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); transition: transform .4s; }
.tfx-curso:hover .tfx-curso-foto img { transform: scale(1.04); }
.tfx-curso-cuerpo { display: flex; flex-direction: column; flex: 1; padding: 20px 22px 24px; text-align: left; }
.tfx-curso h3 { margin: 0 0 12px !important; font-size: 24px !important; line-height: 1.25 !important; }
.tfx-cursos .tfx-curso h3 a { color: #2f323a !important; text-decoration: none !important; }
.tfx-cursos .tfx-curso h3 a:hover { color: #81c341 !important; }
.tfx-curso-intro { margin: 0 0 12px !important; font-size: 15px !important; color: #474c56 !important; }
.tfx-curso-datos { list-style: none !important; margin: 0 0 14px !important; padding: 0 !important; font-size: 15px; line-height: 1.6; color: #474c56; }
.tfx-curso-datos b { color: #2f323a; }
.tfx-curso-meta { margin: 0 0 14px !important; padding: 10px 14px !important; background: #474c56 !important; color: #ecedee !important; font-size: 14px !important; font-style: italic; }
.tfx-cursos .tfx-curso-meta a { color: #f9c20a !important; text-decoration: none !important; }
.tfx-cursos .tfx-curso-meta a:hover { color: #fff !important; }
.tfx-curso-mods { list-style: none !important; margin: 0 0 18px !important; padding: 0 !important; font-size: 15px; line-height: 1.5; }
.tfx-curso-mods li { padding: 5px 0; border-top: 1px solid #ecedee; }
.tfx-cursos .tfx-curso-mods a { color: #474c56 !important; text-decoration: none !important; }
.tfx-cursos .tfx-curso-mods a:hover { color: #81c341 !important; }
.tfx-curso-mods span { color: #8a8e95; }
.tfx-curso-pie { margin: auto 0 0 !important; }
.tfx-curso-pie .tfx-boton { display: block !important; text-align: center; }
.elementor-widget-html a.tfx-boton { display: inline-block; padding: 14px 26px; background: #474c56 !important; color: #f9c20a !important; font-family: Quicksand, sans-serif; font-size: 16px; font-weight: 600; letter-spacing: .04em; text-decoration: none !important; }
.elementor-widget-html a.tfx-boton:hover { background: #f9c20a !important; color: #474c56 !important; }

/* 18.3 La foto de cada modulo y de cada curso (en blanco y negro), centrada y
   sin pasar de 560 px de ancho para que no se coma la pantalla. */
.entry-content figure.tfx-foto-curso { margin: 0 auto 26px !important; text-align: center; border: 0 !important; background: none !important; }
.entry-content figure.tfx-foto-curso img { display: block !important; width: 100% !important; max-width: 560px !important; height: auto !important; margin: 0 auto !important; filter: grayscale(1); }

/* 18.4 LA PAGINA DE CADA CURSO, al estilo de Udemy y Coursera (JH, 10-10-2026:
   «debe verse muy lindo, llamativo y atractivo»). Banda oscura arriba con el
   titulo, los datos y el boton; tarjeta con la foto; «Lo que vas a aprender»;
   el temario en desplegables; la ficha del instructor y el boton final.
   La pagina lleva el titulo de Astra apagado y el ancho completo. */
.tfx-landing { margin: 0; color: #2f323a; }
.tfx-hero { background: linear-gradient(135deg, #2f323a 0%, #474c56 100%); color: #fff; padding: 48px clamp(20px, 5vw, 56px) 56px; margin: 0; }
.tfx-hero-in { max-width: 1140px; margin: 0 auto; display: grid; grid-template-columns: 1fr; gap: 32px; align-items: center; }
@media (min-width: 960px) { .tfx-hero-in { grid-template-columns: minmax(0, 1fr) 360px; gap: 48px; } }
.tfx-landing .tfx-hero .tfx-migas, .tfx-landing .tfx-hero .tfx-migas a { color: #c9cbcf !important; }
.tfx-landing .tfx-hero .tfx-migas a:hover { color: #f9c20a !important; }
.tfx-hero .tfx-insignia { display: inline-block; margin: 0 0 14px; padding: 4px 12px; background: #81c341; color: #fff; font-family: Quicksand, sans-serif; font-size: 13px; font-weight: 500; letter-spacing: .05em; text-transform: uppercase; }
.tfx-landing .tfx-hero h1 { margin: 0 0 14px !important; color: #fff !important; font-family: Oswald, sans-serif !important; font-size: clamp(32px, 4.4vw, 50px) !important; line-height: 1.15 !important; font-weight: 300 !important; letter-spacing: .01em; }
.tfx-hero .tfx-sub { margin: 0 0 18px !important; font-size: 19px !important; line-height: 1.5 !important; color: #e6e7e9 !important; }
.tfx-hero .tfx-datos { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 0 0 20px; padding: 0; list-style: none; font-family: Quicksand, sans-serif; font-size: 15px; color: #e6e7e9; }
.tfx-hero .tfx-datos li { margin: 0; }
.tfx-hero .tfx-datos li::before { content: "● "; color: #81c341; }
.tfx-hero .tfx-autor-mini { display: flex; align-items: center; gap: 10px; margin: 0 0 26px; font-size: 15px; color: #e6e7e9; }
.tfx-hero .tfx-autor-mini img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; border: 2px solid #81c341; }
.tfx-landing .tfx-hero .tfx-autor-mini a { color: #f9c20a !important; text-decoration: none !important; }
.tfx-hero .tfx-botones { display: flex; flex-wrap: wrap; gap: 12px; }
.tfx-landing a.tfx-boton.grande { padding: 16px 30px !important; font-size: 17px !important; background: #f9c20a !important; color: #2f323a !important; }
.tfx-landing a.tfx-boton.grande:hover { background: #81c341 !important; color: #fff !important; }
.tfx-landing a.tfx-boton.claro { padding: 16px 26px !important; font-size: 17px !important; background: transparent !important; color: #fff !important; box-shadow: inset 0 0 0 2px #fff; }
.tfx-landing a.tfx-boton.claro:hover { background: #fff !important; color: #2f323a !important; }
.tfx-tarjeta { background: #fff; color: #2f323a; box-shadow: 0 10px 30px rgba(0,0,0,.25); }
.tfx-tarjeta img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; filter: grayscale(1); }
.tfx-tarjeta-cuerpo { padding: 20px 22px 24px; }
.tfx-tarjeta .tfx-precio { margin: 0 0 12px !important; font-family: Oswald, sans-serif !important; font-size: 34px !important; font-weight: 300 !important; color: #2f323a !important; }
.tfx-tarjeta .tfx-precio small { font-size: 15px; font-weight: 600; color: #6b7079; }
.tfx-tarjeta ul { list-style: none !important; margin: 0 0 18px !important; padding: 0 !important; font-size: 15px; }
.tfx-tarjeta li { margin: 0 0 8px !important; padding-left: 26px; position: relative; }
.tfx-tarjeta li::before { content: "✓"; position: absolute; left: 0; color: #81c341; font-weight: 800; }
.tfx-tarjeta .tfx-boton.grande { display: block !important; text-align: center; }
.tfx-cuerpo { margin: 0; padding: 40px clamp(20px, 5vw, 56px) 8px; background: #fff; }
.tfx-aprende { border: 1px solid #d9dadd; padding: 22px 26px; margin: 0 0 36px; }
.tfx-landing h2 { margin: 0 0 16px !important; font-family: Oswald, sans-serif !important; font-weight: 300 !important; font-size: 30px !important; line-height: 1.2 !important; color: #474c56 !important; }
.tfx-aprende ul { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: 1fr; gap: 10px 28px; }
@media (min-width: 700px) { .tfx-aprende ul { grid-template-columns: 1fr 1fr; } }
.tfx-aprende li { margin: 0 !important; padding-left: 28px; position: relative; font-size: 15px; line-height: 1.5; }
.tfx-aprende li::before { content: "✓"; position: absolute; left: 0; top: 0; color: #81c341; font-weight: 800; font-size: 17px; }
.tfx-temario-curso { margin: 0 0 40px; }
.tfx-temario-curso .tfx-resumen { margin: 0 0 12px !important; font-size: 15px !important; color: #6b7079 !important; }
.tfx-temario-curso details { border: 1px solid #d9dadd; border-bottom: 0; background: #fff; }
.tfx-temario-curso details:last-of-type { border-bottom: 1px solid #d9dadd; }
.tfx-temario-curso summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 20px; background: #f6f6f7; font-family: Quicksand, sans-serif; font-weight: 500; font-size: 17px; color: #2f323a; }
.tfx-temario-curso summary::-webkit-details-marker { display: none; }
.tfx-temario-curso summary::before { content: "▸"; color: #81c341; font-size: 18px; transition: transform .2s; }
.tfx-temario-curso details[open] summary::before { transform: rotate(90deg); }
.tfx-temario-curso summary .tfx-tit { flex: 1; }
.tfx-temario-curso summary small { font-weight: 500; font-size: 14px; color: #6b7079; white-space: nowrap; }
.tfx-temario-curso ol { list-style: none !important; margin: 0 !important; padding: 6px 20px 12px !important; }
.tfx-temario-curso li { display: flex; justify-content: space-between; gap: 12px; margin: 0 !important; padding: 9px 0; border-top: 1px solid #ecedee; font-size: 15px; }
.tfx-temario-curso li:first-child { border-top: 0; }
.tfx-landing .tfx-temario-curso li a { color: #2f323a !important; text-decoration: none !important; }
.tfx-landing .tfx-temario-curso li a:hover { color: #81c341 !important; }
.tfx-temario-curso li .tfx-min { color: #6b7079; white-space: nowrap; }
.tfx-temario-curso .pronto summary { color: #8a8e95; }
.tfx-temario-curso .pronto p { margin: 0 !important; padding: 12px 20px 16px; font-size: 15px; color: #6b7079; }
.tfx-sobre { margin: 0 0 40px; }
.tfx-sobre p { font-size: 16px; line-height: 1.7; }
.tfx-instructor { display: grid; grid-template-columns: 96px 1fr; gap: 18px; align-items: start; margin: 0 0 40px; }
.tfx-instructor img { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; }
.tfx-landing .tfx-instructor h3 { margin: 0 0 4px !important; font-family: Quicksand, sans-serif !important; font-weight: 500 !important; font-size: 20px !important; }
.tfx-landing .tfx-instructor h3 a { color: #2f323a !important; text-decoration: none !important; }
.tfx-instructor p { margin: 0 !important; font-size: 15px; line-height: 1.6; color: #474c56; }
.tfx-final { background: #2f323a; color: #fff; text-align: center; padding: 40px 20px; margin: 10px 0 0; }
.tfx-landing .tfx-final h2 { color: #fff !important; margin: 0 0 18px !important; }

/* 18.5 Las clases en video de un curso (Curso de Trading): cada una con su
   titulo y el reproductor de YouTube a todo el ancho, en 16:9. */
.tfx-clase { margin: 0 0 28px; }
.tfx-landing .tfx-clase h3 { margin: 0 0 10px !important; font-family: Quicksand, sans-serif !important; font-weight: 500 !important; font-size: 19px !important; color: #2f323a !important; }
.tfx-video { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #2f323a; }
.tfx-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.tfx-landing .tfx-sobre h3 { margin: 26px 0 10px !important; font-family: Quicksand, sans-serif !important; font-weight: 500 !important; font-size: 20px !important; color: #2f323a !important; }

/* 18.6 El boton de la pagina de curso, tambien dentro de Elementor (Videoteca). */
.tfx-landing a.tfx-boton { display: inline-block !important; padding: 14px 26px !important; font-family: Quicksand, sans-serif !important; font-size: 16px !important; font-weight: 600 !important; letter-spacing: .04em; text-decoration: none !important; border-radius: 0 !important; }

/* 18.7 LAS DOS CAJAS DEL FINAL DE CADA PAGINA (JH, 10-10-2026): a la izquierda
   la suscripcion al correo del viernes, a la derecha la mentoria (o Bufetico en
   el Curso de Bolsa). 50 % cada una con su hueco; una debajo de otra en el movil.
   Las pinta functions.php (tfx_dos_cajas). */
.tfx-suscripcion-pie { max-width: 1040px !important; }
.tfx-dos-cajas { display: grid; grid-template-columns: 1fr; gap: 20px; margin: 0 auto; }
@media (min-width: 768px) { .tfx-dos-cajas { grid-template-columns: 1fr 1fr; gap: 24px; } }
.tfx-dos-cajas.tfx-sola { grid-template-columns: 1fr; max-width: 520px; }
.tfx-dos-entrada { margin: 36px 0 0 !important; }
.tfx-dos-cajas > .tfx-suscripcion, .tfx-dos-cajas > .tfx-oferta { margin: 0 !important; padding: 20px 22px !important; background: #f2f2f2 !important; border: 1px solid #dcdcdc !important; border-radius: 0 !important; box-sizing: border-box; }
.tfx-suscripcion .tfx-susc-linea { display: block; margin: 0 0 10px; font-size: 14px; line-height: 1.45; color: #474c56; }
.tfx-oferta { display: flex; flex-direction: column; border-left: 4px solid #f9c20a !important; }
.tfx-oferta .tfx-oferta-titulo { margin: 0 0 6px !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1.35 !important; color: #2f333a !important; }
.tfx-oferta .tfx-oferta-linea { margin: 0 0 12px !important; font-size: 14px !important; line-height: 1.45 !important; color: #474c56 !important; }
.tfx-oferta a.tfx-oferta-boton { align-self: flex-start; display: inline-flex !important; align-items: center; height: 32px; margin-top: auto; padding: 0 14px !important; background: #f9c20a !important; color: #2f323a !important; font-size: 14px !important; font-weight: 600 !important; text-decoration: none !important; border-radius: 5px !important; transition: background .2s; }
.tfx-oferta a.tfx-oferta-boton:hover { background: #81c341 !important; color: #fff !important; }

/* El boton SUSCRIBETE del pie de Astra (Pie > Boton 1) sobra desde que estan las dos cajas encima (JH, 10-10-2026). */
.ast-footer-button-1 { display: none !important; }

/* 18.8 LAS DOS CAJAS, IGUALES (JH, 10-10-2026: «mas homogeneo… simetria, alineacion… y que
   todo sea RESPONSIVE»). Las dos con el mismo marco, la misma altura, el titulo y la linea a
   la misma altura, y la fila del boton pegada abajo en las dos, a todo el ancho. Mismo boton
   en las dos (oro, letra oscura, verde al pasar). En el movil, una debajo de otra y el campo
   y el boton a todo el ancho. Solo dentro de .tfx-dos-cajas: la caja de la biografia no cambia. */
.tfx-dos-cajas { align-items: stretch; }
.tfx-dos-cajas > .tfx-suscripcion, .tfx-dos-cajas > .tfx-oferta { display: flex !important; flex-direction: column !important; padding: 24px !important; border: 1px solid #dcdcdc !important; border-left: 1px solid #dcdcdc !important; }
.tfx-dos-cajas > .tfx-suscripcion .sib-form-container, .tfx-dos-cajas > .tfx-suscripcion #sib-container, .tfx-dos-cajas > .tfx-suscripcion form, .tfx-dos-cajas > .tfx-suscripcion .sib-input, .tfx-dos-cajas > .tfx-suscripcion .form__entry, .tfx-dos-cajas > .tfx-suscripcion .form__label-row { display: flex !important; flex-direction: column !important; flex: 1 1 auto !important; margin: 0 !important; padding: 0 !important; }
.tfx-dos-cajas .tfx-susc-titulo, .tfx-dos-cajas .tfx-oferta .tfx-oferta-titulo { margin: 0 0 6px !important; font-size: 16px !important; font-weight: 600 !important; line-height: 1.35 !important; color: #2f323a !important; }
.tfx-dos-cajas .tfx-susc-linea, .tfx-dos-cajas .tfx-oferta .tfx-oferta-linea { margin: 0 0 16px !important; font-size: 15px !important; line-height: 1.5 !important; color: #474c56 !important; }
.tfx-dos-cajas .tfx-susc-fila { margin-top: auto !important; flex-wrap: nowrap !important; gap: 8px !important; }
.tfx-dos-cajas .tfx-susc-campo { flex: 1 1 auto !important; height: 42px !important; font-size: 15px !important; }
.tfx-dos-cajas .tfx-susc-boton, .tfx-dos-cajas .tfx-oferta a.tfx-oferta-boton { flex: 0 0 auto !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; box-sizing: border-box !important; height: 42px !important; padding: 0 18px !important; font-size: 15px !important; font-weight: 600 !important; line-height: 1 !important; color: #2f323a !important; background: #f9c20a !important; border: 0 !important; border-radius: 5px !important; text-decoration: none !important; white-space: nowrap !important; transition: background .2s, color .2s; }
.tfx-dos-cajas .tfx-susc-boton:hover, .tfx-dos-cajas .tfx-oferta a.tfx-oferta-boton:hover { background: #81c341 !important; color: #fff !important; }
.tfx-dos-cajas .tfx-oferta a.tfx-oferta-boton { align-self: stretch !important; margin-top: auto !important; }
@media (max-width: 767px) {
  .tfx-dos-cajas > .tfx-suscripcion, .tfx-dos-cajas > .tfx-oferta { padding: 20px !important; }
  .tfx-dos-cajas .tfx-susc-fila { flex-wrap: wrap !important; }
  .tfx-dos-cajas .tfx-susc-campo, .tfx-dos-cajas .tfx-susc-boton { flex: 1 1 100% !important; width: 100% !important; }
  .tfx-dos-cajas .tfx-oferta a.tfx-oferta-boton { white-space: normal !important; text-align: center; }
}
/* El mismo hueco arriba que abajo (JH, 10-10-2026): 28 px entre el contenido y las dos cajas, y 28 px entre las cajas y el pie. */
.tfx-suscripcion-pie { padding-top: 28px !important; padding-bottom: 28px !important; }
/* Los botones de las dos cajas, como los de la biografia (JH, 10-10-2026): gris oscuro con la
   letra verde, y del ancho de su texto, nunca a todo el ancho (tampoco en el movil). */
.tfx-dos-cajas .tfx-susc-boton, .tfx-dos-cajas .tfx-oferta a.tfx-oferta-boton { color: #72c320 !important; background: #3e4249 !important; }
.tfx-dos-cajas .tfx-susc-boton:hover, .tfx-dos-cajas .tfx-oferta a.tfx-oferta-boton:hover { color: #72c320 !important; background: #2f333a !important; }
.tfx-dos-cajas .tfx-oferta a.tfx-oferta-boton { align-self: flex-start !important; }
@media (max-width: 767px) {
  .tfx-dos-cajas .tfx-susc-boton { flex: 0 0 auto !important; width: auto !important; }
}
/* 16.1f BLOG (pagina 3659), dos entradas por fila desde el 10-10-2026 (JH: «para que se lea
   mejor el titulo»), en filas rectas y del mismo alto. El widget no deja hueco entre columnas
   en este modo: 32 px entre tarjetas, a lo ancho igual que a lo alto. */
.elementor-3659 .elementor-element-d5f9ef7 .uael-post-grid__inner { margin-left: -16px !important; margin-right: -16px !important; }
.elementor-3659 .elementor-element-d5f9ef7 .uael-post-wrapper { padding-left: 16px !important; padding-right: 16px !important; box-sizing: border-box !important; }

/* 18.9 EL DOLOR EN LOS CURSOS (JH, 10-10-2026): debajo de la barra de cada leccion (y de la
   etiqueta de cada modulo) va el subtitulo con el dolor del lector, grande y en gris; luego
   la entrada, dos frases con el dolor y la respuesta directa; y al final, antes de los
   botones, el puente que abre la leccion siguiente. */
.entry-content p.tfx-dolor { margin: 6px 0 18px !important; font-family: Oswald, sans-serif !important; font-weight: 300 !important; font-size: 26px !important; line-height: 1.3 !important; color: #6b7079 !important; }
.entry-content p.tfx-entrada { margin: 0 0 24px !important; padding: 2px 0 2px 16px !important; border-left: 3px solid #81c341 !important; font-size: 18px !important; line-height: 1.6 !important; color: #2f323a !important; }
.entry-content p.tfx-puente { margin: 32px 0 8px !important; padding-top: 16px !important; border-top: 1px solid #e3e4e6 !important; font-weight: 600 !important; color: #2f323a !important; }
@media (max-width: 767px) {
  .entry-content p.tfx-dolor { font-size: 22px !important; }
  .entry-content p.tfx-entrada { font-size: 17px !important; }
}

/* 18.10 LAS PAGINAS DE MODULO, al estilo de las del curso (JH, 10-10-2026: «todo tiene que
   seguir el patron de Coursera»). Mismas piezas del 18.4 dentro de .tfx-landing-modulo; aqui
   lo poco que es suyo: el dolor de cada leccion debajo de su titulo en el temario, los botones
   del final centrados y las fotos viejas del texto sin salirse. */
.tfx-temario-curso li a small.tfx-dolor-mini { display: block; margin-top: 3px; font-size: 14px; line-height: 1.4; color: #6b7079; }
.tfx-final .tfx-botones { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin: 0 !important; }
.tfx-landing-modulo .tfx-sobre img { max-width: 100%; height: auto; }
.tfx-landing-modulo .tfx-sobre h2.wp-block-heading { font-size: 24px !important; margin: 28px 0 12px !important; }

/* 18.11 LAS LECCIONES, al estilo Coursera (JH, 10-10-2026): banda oscura arriba, como la de
   los modulos y los cursos, con las migas, «Modulo N · Leccion n de K», el titulo, el dolor y
   la barra de progreso; debajo, el temario al lado y el texto. La pagina va a ancho completo
   (titulo de Astra apagado) y el aula se centra a 1140 px. */
.tfx-banda-leccion { background: linear-gradient(135deg, #2f323a 0%, #474c56 100%); color: #fff; padding: 36px 20px 40px; margin: 0 0 40px; }
.tfx-banda-in { max-width: 1140px; margin: 0 auto; }
.entry-content .tfx-banda-leccion .tfx-migas, .entry-content .tfx-banda-leccion .tfx-migas a { color: #c9cbcf !important; }
.entry-content .tfx-banda-leccion .tfx-migas a:hover { color: #f9c20a !important; }
.tfx-banda-leccion .tfx-insignia { display: inline-block; margin: 0 0 14px; padding: 4px 12px; background: #81c341; color: #fff; font-family: Quicksand, sans-serif; font-size: 13px; font-weight: 500; letter-spacing: .05em; text-transform: uppercase; }
.entry-content .tfx-banda-leccion h1 { margin: 0 0 12px !important; max-width: 900px; color: #fff !important; font-family: Oswald, sans-serif !important; font-size: clamp(28px, 3.6vw, 42px) !important; line-height: 1.18 !important; font-weight: 300 !important; }
.entry-content .tfx-banda-leccion p.tfx-sub { margin: 0 0 22px !important; max-width: 900px; font-size: 19px !important; line-height: 1.5 !important; color: #e6e7e9 !important; }
.tfx-banda-leccion .tfx-barra { max-width: 900px; height: 8px; background: rgba(255, 255, 255, .18); }
.entry-content > .tfx-aula { max-width: 1140px; margin: 0 auto 40px !important; padding: 0 20px; box-sizing: border-box; }
@media (max-width: 767px) {
  .tfx-banda-leccion { padding: 28px 16px 32px; }
  .entry-content .tfx-banda-leccion p.tfx-sub { font-size: 17px !important; }
}
.entry-content > .tfx-aula { max-width: 1140px !important; margin-left: auto !important; margin-right: auto !important; }
.entry-content > .tfx-aula { max-width: 1020px !important; }

/* 15.5 CABECERA Y PIE DE BORDE A BORDE (JH, 10-10-2026, «footer header.pptx»: «expandir al
   infinito para marcar la diferencia con el contenido»). Astra va en «padded layout»: el body
   tenia 50 px de margen gris (20 en tableta, 10 en movil) y la cabecera y el pie quedaban
   dentro. Ahora el margen lo lleva solo el contenido (#content); la cabecera y el pie llegan al
   borde, y su interior (logo, menu, enlaces) se queda donde estaba. Las bandas oscuras de los
   cursos siguen dentro del contenido, a proposito. Medido en 1280 y 375 antes de guardarlo. */
body.ast-padded-layout { padding: 0 !important; }
.ast-padded-layout #content { margin: 0 50px; }
@media (max-width: 921px) { .ast-padded-layout #content { margin: 0 20px; } }
@media (max-width: 544px) { .ast-padded-layout #content { margin: 0 10px; } }
@media (min-width: 922px) {
  .ast-padded-layout .site-primary-header-wrap { margin-left: 48px !important; margin-right: 48px !important; }
  .ast-padded-layout .site-primary-footer-wrap .ast-builder-grid-row { margin-left: 50px !important; margin-right: 50px !important; }
}
/* Astra pinta en el «padded layout» dos franjas grises fijas de 25 px (body::before arriba y
   ::after abajo) para hacer de marco: tapaban el logo y el copyright (JH, 10-10-2026). Fuera. */
body.ast-padded-layout::before, body.ast-padded-layout::after { display: none !important; }
/* El enlace «Resumen del modulo» encima de la primera leccion de cada desplegable de la pagina
   del curso (JH, 10-10-2026, como «Module overview» en Bufetico): sin el, desde el curso no se
   llegaba a las paginas de modulo. Discreto, subrayado en verde. */
.tfx-temario-curso li.tfx-resumen-modulo { border-top: 0 !important; padding: 10px 0 4px !important; }
.tfx-landing .tfx-temario-curso li.tfx-resumen-modulo a { font-size: 15px; color: #474c56 !important; text-decoration: underline !important; text-decoration-color: #81c341 !important; text-underline-offset: 3px; }
.tfx-landing .tfx-temario-curso li.tfx-resumen-modulo a:hover { color: #81c341 !important; }
.tfx-temario-curso li.tfx-resumen-modulo + li { border-top: 0; }
/* Portada: el titulo nuevo del aula (widget a1d0101, JH 10-10-2026) va en una columna estrecha;
   el tamano del de «Cursos gratuitos» montaba las lineas. */
.elementor-210 .elementor-element-a1d0101 p { font-size: 32px !important; line-height: 1.2 !important; margin-bottom: 18px !important; }
/* Portada, «Cursos gratuitos de introduccion» (JH, 10-10-2026: «demasiado espacio vertical»):
   el titulo dejaba casi 100 px hasta el parrafo y el parrafo otros 90 hasta las tarjetas. */
.elementor-210 .elementor-element-90e9ff7 { margin-bottom: 0 !important; }
.elementor-210 .elementor-element-90e9ff7 p { margin-bottom: 18px !important; }
.elementor-210 .elementor-element-6fe3c1c p { margin-bottom: 0 !important; }
.elementor-210 .elementor-element-90e9ff7 p { margin-bottom: 34px !important; }
/* Simetria (JH, 10-10-2026: «la simetria es parte de la belleza»): 40 px del titulo al parrafo
   y 40 px del parrafo a las tarjetas. El titulo va a interlineado 1.15 para que su caja mida lo
   que mide la letra; las tarjetas suben 27 px dentro de su franja. */
.elementor-210 .elementor-element-90e9ff7 p { line-height: 1.15 !important; margin-bottom: 40px !important; }
.elementor-210 .elementor-element-a7c0b12 { margin-top: -27px !important; }
/* El relojito de la duracion en la ficha oscura de cada tarjeta («T = 4.5 h» no se entendia). */
.tfx-reloj { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.tfx-reloj svg { width: 14px; height: 14px; flex: 0 0 14px; }
/* Los mismos 40 px en tableta (alli el hueco natural es 49) y en movil (34). */
@media (max-width: 1024px) { .elementor-210 .elementor-element-a7c0b12 { margin-top: -9px !important; } }
@media (max-width: 767px) { .elementor-210 .elementor-element-a7c0b12 { margin-top: 6px !important; } }

/* 18.12 LA VIDEOTECA EN DOS BLOQUES (JH, 10-10-2026): arriba «El metodo de hoy» (2025-2026),
   abajo «Archivo: asi empezamos» (2010-2020). Las filas nuevas llevan la clase
   tfx-fila-videoteca y se portan como las dos de siempre del 16.1 (dos bloques por fila). */
@media (min-width: 768px) {
  .elementor-3664 .tfx-fila-videoteca > .elementor-container { flex-wrap: wrap; }
  .elementor-3664 .tfx-fila-videoteca > .elementor-container > .elementor-column { width: 50% !important; }
}
.tfx-videoteca-cab { max-width: 1140px; margin: 48px auto 8px; padding: 0 20px; text-align: center; } /* 1140 (JH 14-10): cada parrafo en una sola linea en el ordenador */
.entry-content .tfx-videoteca-cab h2 { margin: 0 0 12px !important; font-family: Oswald, sans-serif !important; font-weight: 300 !important; font-size: clamp(28px, 3.4vw, 38px) !important; line-height: 1.2 !important; color: #474c56 !important; }
.tfx-videoteca-cab p { margin: 0 !important; font-size: 17px; line-height: 1.6; color: #6b7079; }
/* El titulo nuevo de la introduccion de la Videoteca (JH, 10-10-2026). */
.entry-content h2.tfx-videoteca-intro-titulo { margin: 0 0 16px !important; font-family: Oswald, sans-serif !important; font-weight: 300 !important; font-size: 28px !important; line-height: 1.25 !important; color: #474c56 !important; }
/* Videoteca (JH, 10-10-2026): la tarjeta blanca pegada al video, como las del blog, y el gris
   de rayitas de las filas un 12 % mas oscuro para que el blanco destaque. */
.elementor-3664 .tfx-fila-videoteca .elementor-widget-text-editor:has(iframe) { margin-bottom: 0 !important; }
.elementor-3664 .tfx-fila-videoteca .elementor-widget-text-editor:has(iframe) p { margin: 0 !important; }
.elementor-3664 .tfx-fila-videoteca .elementor-widget-text-editor iframe { display: block !important; }
.elementor-3664 .tfx-fila-videoteca { background-color: #e0e0e0 !important; background-blend-mode: multiply !important; }
/* Tabla de precios de la mentoria (JH, 10-10-2026: «se ve confuso entre requisitos y que
   incluye»). Las dos etiquetas marcan donde empieza cada parte (raya verde, mas grandes y en
   gris oscuro, con aire encima) y las filas de requisitos llevan un amarillo muy suave de la
   paleta para leerse como condiciones, no como cosas que recibes. Sin oscuro, para no
   confundirlo con la cabecera de los planes. Lo mismo en las tarjetas del movil. */
.tfx-p2__tabla .tfx-p2__acapite td { background: #fff !important; padding: 22px 14px 8px !important; font-size: 13px !important; letter-spacing: 1.2px !important; color: #2f323a !important; border-left: 4px solid #81c341 !important; }
.tfx-p2__tabla .tfx-p2__req td { background: #fff8e1 !important; }
.tfx-p2__acapite-m { padding: 18px 16px 8px !important; background: #fff !important; font-size: 13px !important; letter-spacing: 1.2px !important; color: #2f323a !important; border-left: 4px solid #81c341; }
/* «Requisitos para entrar» como UNA caja (JH, 10-10-2026): el titulo y sus tres filas con el mismo
   fondo, mas claro que antes (#fffdf6: JH lo quiere muy leve, como un subrayado; tres pasos de aclarado), en el movil (tarjetas) y en el ordenador (tabla).
   La raya verde del titulo queda a la vista. «Lo que recibes cada mes» sigue en blanco. */
.tfx-p2__tarjeta .tfx-p2__acapite-m ~ .tfx-p2__fila { background: #fffdf6; }
.tfx-p2__tarjeta .tfx-p2__acapite-m ~ .tfx-p2__acapite-m ~ .tfx-p2__fila { background: transparent; }
.tfx-p2__tarjeta .tfx-p2__acapite-m:not(.tfx-p2__acapite-m ~ .tfx-p2__acapite-m) { background: #fffdf6 !important; }
.tfx-p2__tabla .tfx-p2__req td { background: #fffdf6 !important; }
.tfx-p2__tabla .tfx-p2__acapite:not(.tfx-p2__acapite ~ .tfx-p2__acapite) td { background: #fffdf6 !important; }
/* Resenas de la mentoria en el movil (JH, 10-10-2026: «se cortan»). Las alturas de cada
   resena estan calculadas para 500 px de ancho; en un movil el texto ocupa mas lineas y Facebook
   lo cortaba. En pantallas estrechas el marco de Facebook pasa a 640 px (cabe la resena entera)
   y se ve por una ventana de 380 px con scroll, para que el bloque completo quepa en el movil. */
@media (max-width: 600px) {
  .tfx-resenas__pista { min-height: 380px !important; }
  .tfx-resenas__item.activa { height: 380px; overflow-y: auto; -webkit-overflow-scrolling: touch; border: 1px solid #e3e4e6; border-radius: 6px; }
  .tfx-resenas__item iframe { height: 640px !important; }
}
/* Movil, segunda vuelta (JH, 10-10-2026: «espacio blanco debajo»): cada resena con su propia
   altura en el movil, sacada de la de escritorio y comprobada a ojo en 375 px (la mas larga y
   la mas corta enteras, con su pie de Me gusta), y la ventana como mucho de 380 px. */
@media (max-width: 600px) {
  .tfx-resenas__item.activa { height: auto; max-height: 380px; }
  .tfx-resenas__item:nth-child(1) iframe { height: 417px !important; }
  .tfx-resenas__item:nth-child(2) iframe { height: 426px !important; }
  .tfx-resenas__item:nth-child(3) iframe { height: 530px !important; }
  .tfx-resenas__item:nth-child(4) iframe { height: 500px !important; }
  .tfx-resenas__item:nth-child(5) iframe { height: 377px !important; }
  .tfx-resenas__item:nth-child(6) iframe { height: 469px !important; }
  .tfx-resenas__item:nth-child(7) iframe { height: 383px !important; }
  .tfx-resenas__item:nth-child(8) iframe { height: 426px !important; }
}

/* 18.13 RECURSOS EN TARJETAS (JH, 10-10-2026: «la veo insulsa»). Cada recurso es una tarjeta
   como las de los cursos de la portada: franja gris con el icono grande, titulo, una frase con
   el dolor y el boton oscuro con letra dorada pegado abajo (las siete a la misma altura).
   Cuatro por fila en el ordenador (la segunda fila centrada), dos en tableta, una en el movil. */
.tfx-recursos-sub { max-width: 760px; margin: 0 auto 36px !important; padding: 0 20px; text-align: center; font-size: 18px; line-height: 1.6; color: #474c56; }
.tfx-recursos { display: flex; flex-wrap: wrap; justify-content: center; gap: 28px; max-width: 1180px; margin: 0 auto 48px; padding: 0 20px; box-sizing: border-box; }
.tfx-rec { flex: 0 1 calc(25% - 21px); min-width: 0; display: flex; flex-direction: column; background: #fff; box-shadow: 0 6px 22px rgba(0,0,0,.12); text-decoration: none !important; color: inherit !important; transition: transform .2s, box-shadow .2s; }
.tfx-rec:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,.18); }
.tfx-rec-img { display: flex; align-items: center; justify-content: center; height: 170px; background: #eceeef repeating-linear-gradient(135deg, rgba(255,255,255,.35) 0 2px, transparent 2px 9px); }
.tfx-rec-img img { width: 120px !important; height: 120px !important; object-fit: contain; }
.tfx-rec-cuerpo { display: flex; flex-direction: column; flex: 1; padding: 20px 22px 22px; }
.entry-content .tfx-rec h3 { margin: 0 0 10px !important; font-family: Oswald, sans-serif !important; font-weight: 300 !important; font-size: 24px !important; line-height: 1.2 !important; color: #2f323a !important; }
.tfx-rec p { margin: 0 0 18px !important; font-size: 15px; line-height: 1.55; color: #474c56; }
.tfx-rec .tfx-rec-boton { margin-top: auto; display: block; padding: 12px 14px; text-align: center; background: #474c55; color: #f9c20a; font-family: Quicksand, sans-serif; font-weight: 600; font-size: 15px; transition: background .2s; }
.tfx-rec:hover .tfx-rec-boton { background: #2f323a; }
@media (max-width: 1100px) { .tfx-rec { flex-basis: calc(50% - 14px); } }
@media (max-width: 640px) { .tfx-rec { flex-basis: 100%; } .tfx-recursos { gap: 22px; } }
/* Recursos: la pagina es de Elementor y no va dentro de .entry-content; el titulo, con Oswald y en una linea. */
.tfx-rec h3 { margin: 0 0 10px !important; font-family: Oswald, sans-serif !important; font-weight: 300 !important; font-size: 22px !important; line-height: 1.2 !important; color: #2f323a !important; white-space: nowrap; }
.tfx-rec p { margin: 0 0 18px !important; }
/* Las siete tarjetas de Recursos a la misma altura: la descripcion reserva seis lineas. */
@media (min-width: 641px) { .tfx-rec p { min-height: 9.3em; } }
/* Cabecera de Recursos (JH, 10-10-2026): titulo con el dolor y la frase debajo, dentro de la
   caja gris, centrados y con el mismo margen por los cuatro lados; 40 px hasta las tarjetas. */
.elementor-17253 .elementor-element-b1b3a20 > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 32px 40px !important; }
.tfx-recursos-cabsub { margin: 0 !important; text-align: center; font-size: 18px; line-height: 1.55; color: #474c56; }
.elementor-17253 .tfx-recursos { margin-top: 40px !important; }
/* Titulo de Recursos con las lineas repartidas, sin una palabra sola al final. */
.elementor-17253 .elementor-element-a5cd6d8 .elementor-heading-title { text-wrap: balance; }
/* Portada: el bloque de las redes termina pegado al final del contenido, sin franja blanca debajo (JH, 10-10-2026). */
.elementor-210 .elementor-element-f68ba3a { margin-bottom: 0 !important; }
/* Auditoria responsive (JH, 10-10-2026): en moviles pequenos el «12 lecciones · 128 min» del
   temario desbordaba 47 px a 320. Ahi la linea puede partirse. */
@media (max-width: 420px) { .tfx-temario-curso summary { flex-wrap: wrap; } .tfx-temario-curso summary small { white-space: normal; } }

/* 19 - PAGINA DE AUTOR (JH, 10-10-2026): la caja de arriba como la del instructor
   de los cursos. Foto grande y redonda al lado del nombre, la sombra de las
   tarjetas de abajo, y en movil el texto debajo a todo el ancho. */
body.author .ast-author-box.ast-archive-description {
  display: grid !important; grid-template-columns: 120px 1fr; column-gap: 28px; row-gap: 14px;
  align-items: center; padding: 32px !important; margin-bottom: 30px !important;
  background: #fff; box-shadow: 0 1px 4px rgba(0,0,0,.07);
}
body.author .ast-author-box .ast-author-avatar { grid-column: 1; grid-row: 1 / span 2; margin: 0 !important; align-self: start; }
body.author .ast-author-box .ast-author-avatar img {
  width: 120px !important; height: 120px !important; max-width: none; border-radius: 50%;
  object-fit: cover; border: 3px solid #81c341; display: block;
}
body.author .ast-author-box .ast-author-bio { display: contents; }
body.author .ast-author-box .ast-archive-title {
  grid-column: 2; grid-row: 1; align-self: end; margin: 0 !important;
  font-size: 34px !important; line-height: 1.2 !important; font-weight: 500 !important; color: #2f323a;
}
body.author .ast-author-box .ast-author-bio p {
  grid-column: 2; grid-row: 2; align-self: start; margin: 0 !important;
  font-size: 15px; line-height: 1.65; color: #474c56;
}
@media (max-width: 544px) {
  body.author .ast-author-box.ast-archive-description {
    grid-template-columns: 84px 1fr; column-gap: 16px; padding: 22px 18px !important; margin-bottom: 22px !important;
  }
  body.author .ast-author-box .ast-author-avatar { grid-row: 1; align-self: center; }
  body.author .ast-author-box .ast-author-avatar img { width: 84px !important; height: 84px !important; }
  body.author .ast-author-box .ast-archive-title { align-self: center; font-size: 26px !important; }
  body.author .ast-author-box .ast-author-bio p { grid-column: 1 / -1; }
}

/* 20 - LIBROS DE INVERSION (JH, 10-10-2026): la misma tarjeta de Recursos, de donde se llega,
   pero con la portada del libro arriba. Tres por fila (los titulos son largos), dos en
   tableta, una en el movil; titulo, autor y descripcion a la misma altura en cada fila. */
.tfx-pagina-libros .tfx-libros { margin: 44px auto 12px !important; max-width: 1140px; }
.tfx-libros .tfx-rec { flex-basis: calc(33.333% - 19px); }
.tfx-libros .tfx-rec-img { height: 270px; }
.tfx-libros .tfx-rec-img img { width: auto !important; height: 220px !important; max-width: 85%; object-fit: contain; box-shadow: 0 8px 18px rgba(0,0,0,.28); }
.tfx-libros .tfx-rec h3 { white-space: normal !important; font-size: 22px !important; }
.tfx-libros .tfx-rec p.tfx-libro-autor { min-height: 0 !important; margin: 0 0 12px !important; font-size: 14px; font-weight: 600; color: #4d8022; }
@media (min-width: 641px) {
  .tfx-libros .tfx-rec h3 { min-height: 2.4em; }
  .tfx-libros .tfx-rec p:not(.tfx-libro-autor) { min-height: 10.9em; }
}
@media (max-width: 1100px) { .tfx-libros .tfx-rec { flex-basis: calc(50% - 14px); } }
@media (max-width: 640px) { .tfx-libros .tfx-rec { flex-basis: 100%; } .tfx-libros .tfx-rec-img { height: 240px; } .tfx-libros .tfx-rec-img img { height: 200px !important; } }

/* 21 - RECURSOS EN 3-3-2 (JH, 10-10-2026; 3-3-2 desde el 11-10-2026): en el ordenador, los tres cursos arriba y debajo
   dos filas de dos, centradas y con las tarjetas del mismo ancho que las de arriba.
   En tableta siguen dos por fila y en el movil una. */
@media (min-width: 1101px) {
  .elementor-17253 .tfx-recursos { display: grid; grid-template-columns: repeat(6, 1fr); max-width: 1080px; }
  .elementor-17253 .tfx-rec { grid-column: span 2; }
  /* 11-10-2026 (JH): ocho tarjetas en 3-3-2; la ultima fila, centrada. */
  .elementor-17253 .tfx-rec:nth-child(7) { grid-column: 2 / span 2; }
  .elementor-17253 .tfx-rec:nth-child(8) { grid-column: 4 / span 2; }
}

/* 22 - LOS PASOS DE PSICOTRADING (JH, 10-10-2026): en vez de desplegables que se abrian
   todos a la vez, cada paso es una fila: el numero en un circulo verde, el titulo con el
   dolor, la frase y sus tres tarjetas en linea (una debajo de otra en el movil). */
.tfx-pasos { margin: 8px 0 44px; }
.tfx-paso { display: grid; grid-template-columns: 56px 1fr; gap: 22px; padding: 28px 30px; margin: 0 0 24px; background: #fff; box-shadow: 0 6px 22px rgba(0,0,0,.10); }
.tfx-paso-num { width: 56px; height: 56px; border-radius: 50%; background: #81c341; color: #fff; font-family: Oswald, sans-serif; font-size: 28px; font-weight: 500; display: flex; align-items: center; justify-content: center; }
.entry-content .tfx-paso h3 { margin: 6px 0 8px !important; font-family: Oswald, sans-serif !important; font-weight: 300 !important; font-size: 26px !important; line-height: 1.25 !important; color: #2f323a !important; }
.tfx-paso > div > p { margin: 0 0 4px !important; font-size: 16px; line-height: 1.6; color: #474c56; }
.tfx-paso .tfx-paso-boton { margin: 14px 0 6px !important; }
.tfx-paso-items { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 18px; }
.tfx-paso-item { background: #f4f5f6; border-top: 3px solid #81c341; padding: 16px 18px; }
.entry-content .tfx-paso-item h4 { margin: 0 0 6px !important; font-family: Quicksand, sans-serif !important; font-size: 17px !important; font-weight: 600 !important; color: #2f323a !important; }
.tfx-paso-item p { margin: 0 !important; font-size: 14.5px; line-height: 1.55; color: #474c56; }
.tfx-paso-item a { color: #4d8022; font-weight: 600; }
@media (max-width: 760px) {
  .tfx-paso { grid-template-columns: 1fr; gap: 10px; padding: 22px 18px; }
  .tfx-paso-num { width: 44px; height: 44px; font-size: 22px; }
  .tfx-paso-items { grid-template-columns: 1fr; gap: 12px; }
}

/* 23 - CURSOS EN GRIS, RECURSOS EN VERDE (JH, 10-10-2026). Todo igual salvo el color, para que
   el visitante sepa de un vistazo si va a estudiar (gris grafito: los cursos, sus modulos, sus
   lecciones y el curso en PDF) o a consultar (verde oscuro de la marca: Psicotrading, Libros,
   Videoteca y Herramientas). En los recursos la etiqueta de arriba y los puntos van en dorado. */
.page-id-4265 .tfx-hero, .page-id-13659 .tfx-hero, .page-id-3664 .tfx-hero, .page-id-4268 .tfx-hero, .page-id-20044 .tfx-hero { background: linear-gradient(135deg, #1f3a12 0%, #3a6420 100%) !important; }
.page-id-4265 .tfx-hero .tfx-insignia, .page-id-13659 .tfx-hero .tfx-insignia, .page-id-3664 .tfx-hero .tfx-insignia, .page-id-4268 .tfx-hero .tfx-insignia, .page-id-20044 .tfx-hero .tfx-insignia { background: #f9c20a !important; color: #2f323a !important; }
.page-id-4265 .tfx-hero .tfx-datos li::before, .page-id-13659 .tfx-hero .tfx-datos li::before, .page-id-3664 .tfx-hero .tfx-datos li::before, .page-id-4268 .tfx-hero .tfx-datos li::before, .page-id-20044 .tfx-hero .tfx-datos li::before { color: #f9c20a !important; }

/* 24 - INDICADORES PARA TRADINGVIEW (JH, 10-10-2026): cada indicador es una tarjeta con su
   titulo, la frase con el dolor y el codigo debajo, en una caja oscura que no pasa mucho del
   alto del parrafo (se desplaza por dentro) y con el boton de copiar en la esquina.
   Tres por fila en el ordenador, uno por fila en tableta y movil. Debajo, el video a 16:9. */
.tfx-indicadores { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; max-width: 1140px; margin: 10px auto 44px; padding: 0 20px; box-sizing: border-box; }
.tfx-ind { display: flex; flex-direction: column; min-width: 0; background: #fff; box-shadow: 0 6px 22px rgba(0,0,0,.12); }
.tfx-ind-cab { padding: 22px 22px 0; flex: 1; }
.entry-content .tfx-ind h3 { margin: 0 0 4px !important; font-family: Oswald, sans-serif !important; font-weight: 300 !important; font-size: 26px !important; line-height: 1.2 !important; color: #2f323a !important; }
.tfx-ind .tfx-ind-nombre { margin: 0 0 10px !important; font-family: Quicksand, sans-serif; font-size: 13px; font-weight: 600; color: #4d8022; letter-spacing: .03em; }
.tfx-ind p.tfx-ind-texto { margin: 0 !important; font-size: 15px; line-height: 1.55; color: #474c56; }
.tfx-codigo { position: relative; margin: 16px 22px 22px; background: #1f2328; border-radius: 6px; }
.entry-content .tfx-codigo pre { margin: 0 !important; padding: 42px 14px 14px !important; max-height: 190px; overflow: auto; background: transparent !important; border: 0 !important; color: #e6e7e9 !important; font-family: Consolas, Menlo, monospace !important; font-size: 12px !important; line-height: 1.5 !important; white-space: pre !important; word-wrap: normal !important; }
.tfx-copiar { position: absolute; top: 8px; right: 8px; padding: 5px 12px; border: 0; border-radius: 4px; background: #474c55; color: #f9c20a; font-family: Quicksand, sans-serif; font-size: 13px; font-weight: 600; cursor: pointer; line-height: 1.4; }
.tfx-copiar:hover { background: #2f323a; }
.tfx-video { position: relative; max-width: 860px; margin: 0 auto 8px; aspect-ratio: 16 / 9; background: #000; box-shadow: 0 6px 22px rgba(0,0,0,.15); }
.tfx-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 1000px) { .tfx-indicadores { grid-template-columns: 1fr; max-width: 720px; } }

/* 24. EL MISMO MICROESPACIO ARRIBA Y ABAJO EN TODA LA WEB (JH, 11-10-2026: «debe estar igual arriba
   que abajo, para crear simetria y homogeneidad»). 8 px entre la cabecera y el primer bloque, y entre
   el ultimo bloque y el pie, en las paginas de Elementor y en las de bloques. Antes: arriba 0, 13 o 25 px
   segun la pagina; abajo 25 o 28 px. */
#content #primary { margin-top: 8px !important; margin-bottom: 8px !important; }
.elementor-page #content { padding-top: 8px !important; }
.elementor-page #content > .ast-container > .elementor > .elementor-section:first-child,
.elementor-page #content > .ast-container > .elementor > .e-con:first-child { margin-top: 0 !important; }
.elementor-page #content > .ast-container > .elementor > .elementor-section:last-child,
.elementor-page #content > .ast-container > .elementor > .e-con:last-child { margin-bottom: 0 !important; }
.elementor-page:not(:has(.tfx-suscripcion-pie)) #content { padding-bottom: 8px !important; }
/* 11-10-2026 (JH): la franja de las dos cajas, el mismo aire arriba y abajo (28 px), aunque sea lo ultimo antes del pie. */
.tfx-suscripcion-pie { padding-bottom: 28px !important; }

/* 25. EL PIE: LOGO, CORREO E ICONOS (JH, 11-10-2026, «pgrade.pptx»). El logo se queda donde esta; el
   correo y los iconos suben. El espacio del logo al correo y del correo a los iconos es el mismo que hay
   entre las lineas de las otras columnas del pie (6 px). */
.site-footer-section-4 > .footer-widget-area,
.site-footer-section-4 > aside,
.site-footer-section-4 .ast-footer-social-wrap { margin-top: 0 !important; margin-bottom: 0 !important; }
.site-footer-section-4 .ast-builder-layout-element { margin: 0 !important; }
.site-footer-section-4 > div.footer-widget-area { margin-top: 6px !important; }
.site-footer-section-4 .ast-footer-social-wrap { margin-top: 2px !important; }

/* 26 - FOTO A UN TERCIO CON EL TEXTO AL LADO (JH, 11-10-2026)
   En las entradas: bloque de imagen alineado a la izquierda con la clase tfx-tercio.
   El texto sigue a la derecha y debajo; en el movil, la foto a todo el ancho. */
.entry-content .wp-block-image.alignleft.tfx-tercio {
  width: 33% !important;
  max-width: 33% !important;
  margin: 4px 24px 12px 0 !important;
}
.entry-content .wp-block-image.alignleft.tfx-tercio img { width: 100%; height: auto; }
.entry-content .tfx-limpia { clear: both; }
/* Tras una foto flotante el margen de arriba se lo come el clear: el aire va como relleno. */
.entry-content h2.tfx-limpia, .entry-content h3.tfx-limpia { margin-top: 0 !important; padding-top: 1.8em !important; }
@media (max-width: 600px) {
  .entry-content .wp-block-image.alignleft.tfx-tercio {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
  }
}

/* 27 - LAS DOS CAJAS DEL FINAL, DOS COLUMNAS IGUALES (JH, 11-10-2026: «desalineados»)
   Con 1fr la caja del correo crecia hasta el ancho de su campo y su boton, y la otra
   encogia o se salia por la derecha. minmax(0,1fr) las deja iguales y dentro del texto. */
@media (min-width: 768px) {
  .tfx-dos-cajas { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; }
}
.tfx-dos-cajas > .tfx-suscripcion, .tfx-dos-cajas > .tfx-oferta { min-width: 0 !important; }
.tfx-dos-cajas .tfx-susc-campo { min-width: 0 !important; width: auto !important; }

/* 28 - PAGINAS DE RECURSOS HECHAS CON BLOQUES (JH, 11-10-2026): Indicadores para MetaTrader (20044).
   La cabecera tfx-hero va arriba a todo el ancho y el texto en una columna centrada. */
.tfx-cuerpo-pagina { max-width: 900px; margin: 40px auto 0 !important; padding: 0 20px; box-sizing: border-box; }

/* 29 - FOTO DE ARRIBA DE RECURSOS (JH, 11-10-2026): dos tercios de ancho, como en las fases, y
   llenando la altura de su columna aunque el texto de al lado sea mas alto (sin franja gris debajo). */
@media (min-width: 768px) {
  .elementor-17253 .elementor-element-b763352 > .elementor-widget-wrap,
  .elementor-17253 .elementor-element-b37d014,
  .elementor-17253 .elementor-element-b37d014 .elementor-widget-container { height: 100% !important; }
  .elementor-17253 .elementor-element-b37d014 img { width: 100% !important; height: 100% !important; object-fit: cover; }
}

/* 30 - PORTADA, TEXTO AL LADO DEL VIDEO (JH, 11-10-2026): titulo y parrafo dentro de la altura del video. */
.elementor-210 .elementor-element-45bd07c p { letter-spacing: 0 !important; font-size: 16px !important; line-height: 1.2 !important; margin-bottom: 0 !important; }
/* 30.1 (JH 22-10-2026, frase nueva del autodidacta y video de Flujo): letra medida para llenar la altura del video desde 1.200 px (iframes, max-width:none). */
@media (min-width: 1025px) and (max-width: 1274px) { .elementor-210 .elementor-element-45bd07c p { font-size: 14px !important; } }
@media (min-width: 1275px) and (max-width: 1329px) { .elementor-210 .elementor-element-45bd07c p { font-size: 15px !important; } }
@media (min-width: 1330px) and (max-width: 1359px) { .elementor-210 .elementor-element-45bd07c p { font-size: 16px !important; } }
@media (min-width: 1360px) and (max-width: 1399px) { .elementor-210 .elementor-element-45bd07c p { font-size: 16.5px !important; } }
@media (min-width: 1400px) { .elementor-210 .elementor-element-45bd07c p { font-size: 17px !important; } }

/* 31 - PORTADA, PRIMER MODULO (JH, 11-10-2026): «Desde el año 2010,» como titulo grande y debajo el parrafo del dolor con la letra del texto. */
.elementor-210 .elementor-element-dc720b5 .tfx-portada-t { font-family: Oswald, sans-serif !important; font-size: clamp(30px, 3.1vw, 46px) !important; line-height: 1.1 !important; white-space: nowrap !important; letter-spacing: 0 !important; margin: 0 0 14px !important; color: #474c55 !important; }
.elementor-210 .elementor-element-dc720b5 .tfx-portada-p { letter-spacing: 0 !important; font-family: Quicksand, sans-serif !important; font-size: 18px !important; font-weight: 400 !important; line-height: 1.55 !important; margin: 0 !important; color: #52565e !important; }
@media (max-width: 767px) { .elementor-210 .elementor-element-dc720b5 .tfx-portada-t { font-size: 36px !important; } }

/* 32 - INDICADORES PARA METATRADER (20044), JH 12-10-2026 (heramientas.pptx): indice arriba a la izquierda como en los cursos, y El Analista y El Operador como titulos muy grandes con un divisor gris fino encima. */
html { scroll-behavior: smooth; }
.tfx-cuerpo-pagina h2[id], .tfx-cuerpo-pagina h3[id] { scroll-margin-top: 110px; }
.tfx-cuerpo-pagina .tfx-indice { float: left; width: 300px; margin: 6px 32px 20px 0 !important; }
.tfx-indice ol > li { border-top: 1px solid #e3e4e6; padding: 6px 0 !important; }
.tfx-indice ol > li:first-child { border-top: 0; }
.entry-content .tfx-indice li.tfx-indice-fase > a { display: flex; gap: 10px; align-items: center; padding: 6px 0; border-top: 0; font-family: Oswald, sans-serif; font-size: 20px; font-weight: 500; color: #2f323a !important; text-transform: uppercase; letter-spacing: .5px; }
.tfx-indice li.tfx-indice-fase .num { background: #f9c20a; color: #2f323a; }
.tfx-indice ul { list-style: none !important; margin: 0 0 0 34px !important; padding: 0 !important; }
.tfx-indice ul li { margin: 0 !important; }
.entry-content .tfx-indice ul li a { display: block; padding: 5px 0; border-top: 0; font-size: 14.5px; line-height: 1.35; color: #474c56 !important; }
.entry-content .tfx-indice a:hover { color: #81c341 !important; }
.entry-content .tfx-cuerpo-pagina h2.tfx-fase { clear: both; position: relative; margin: 0 0 .9em !important; padding: 117px 0 0 !important; border-top: 0; font-family: Oswald, sans-serif !important; font-size: 52px !important; line-height: 1.05 !important; font-weight: 500 !important; text-transform: uppercase; letter-spacing: 1px; color: #2f323a !important; }
/* la foto de la tarjeta de arriba es un pantallazo 16:9 de MetaTrader: entera, sin recortar (JH 12-10) */
.tfx-pagina-indicadores .tfx-tarjeta img { aspect-ratio: 16 / 9 !important; object-fit: cover !important; height: auto !important; }
/* el divisor va dentro del titulo: 58 px arriba y 58 abajo, iguales en los dos (JH 12-10); el clear se comia el margen */
.entry-content .tfx-cuerpo-pagina h2.tfx-fase::before { content: ""; position: absolute; left: 0; right: 0; top: 58px; border-top: 1px solid #d9dadd; }
.tfx-cuerpo-pagina *:has(+ h2.tfx-fase) { margin-bottom: 0 !important; }
.entry-content .tfx-cuerpo-pagina .tfx-tercio:has(+ h2.tfx-fase), .entry-content .tfx-cuerpo-pagina .tfx-tercio:has(+ * + h2.tfx-fase), .entry-content .tfx-cuerpo-pagina .tfx-tercio:has(+ * + * + h2.tfx-fase), .entry-content .tfx-cuerpo-pagina .tfx-tercio:has(+ * + * + * + h2.tfx-fase) { margin-bottom: 0 !important; }
.tfx-fase-num { display: inline-block; width: 52px; height: 52px; line-height: 52px; margin-right: 16px; text-align: center; vertical-align: top; background: #f9c20a; color: #2f323a; font-size: 34px; }
.tfx-fase-sub { display: block; margin-top: 10px; font-family: Quicksand, sans-serif; font-size: 21px; line-height: 1.35; font-weight: 500; text-transform: none; letter-spacing: 0; color: #6b7079; }
@media (max-width: 760px) {
  .tfx-cuerpo-pagina .tfx-indice { float: none; width: auto; margin: 0 0 28px !important; }
  .entry-content .tfx-cuerpo-pagina h2.tfx-fase { font-size: 38px !important; padding-top: 81px !important; }
  .entry-content .tfx-cuerpo-pagina h2.tfx-fase::before { top: 40px; }
  .tfx-fase-num { width: 40px; height: 40px; line-height: 40px; font-size: 26px; margin-right: 12px; }
  .tfx-fase-sub { font-size: 18px; }
}

/* 33 - MENTORIA (3860), JH 14-10-2026 (web.pptx): franjas que alternan oscuro y claro para dar contraste, el programa con un solo fondo, el modulo nuevo de las Experiencias y las resenas en oscuro justo antes del precio. */
/* 33.1 El programa fase por fase: un solo fondo oscuro (antes: blanco, rayado, panel gris y miniatura verde) */
.elementor-3860 .elementor-element-cd1a84d, .elementor-3860 .elementor-element-e5599d4 { background: #474C55 !important; background-image: none !important; }
.elementor-3860 .elementor-element-cd1a84d { margin-top: 0 !important; padding-top: 36px !important; }
.elementor-3860 .elementor-element-e5599d4 { margin-bottom: 0 !important; padding-bottom: 40px !important; }
.elementor-3860 .elementor-element-e5599d4 > .elementor-container > .elementor-column > .elementor-widget-wrap, .elementor-3860 .elementor-element-e5599d4 > .elementor-container > .elementor-column { background: transparent !important; background-image: none !important; }
.elementor-3860 .elementor-element-b53f2f7 .elementor-heading-title { color: #82C341 !important; }
.elementor-3860 .elementor-element-c8077ff { --divider-color: rgba(255,255,255,.3); }
.elementor-3860 .elementor-element-c8077ff .elementor-icon, .elementor-3860 .elementor-element-c8077ff .elementor-icon i, .elementor-3860 .elementor-element-c8077ff svg { color: #fff !important; fill: #fff !important; }
.elementor-3860 .elementor-element-3159fbe .elementor-heading-title { color: #fff !important; }
.elementor-3860 .elementor-element-0b2da19, .elementor-3860 .elementor-element-0b2da19 p { color: #d5d7da !important; }
.elementor-3860 .elementor-element-6e87c0a .elementor-custom-embed-image-overlay { filter: grayscale(1); }
.elementor-3860 .elementor-element-1146e8a .elementor-tab-title, .elementor-3860 .elementor-element-1146e8a .elementor-tab-title a { color: #c9ccd1 !important; }
.elementor-3860 .elementor-element-1146e8a .elementor-tab-title.elementor-active, .elementor-3860 .elementor-element-1146e8a .elementor-tab-title.elementor-active a { color: #82C341 !important; }
.elementor-3860 .elementor-element-1146e8a .elementor-tab-content { background: transparent !important; border: 1px solid rgba(255,255,255,.18) !important; }
/* 33.2 Experiencias de la mentoria: fondo blanco, la lista a la izquierda y el video a la derecha (estilo de las listas de la Videoteca) */
.elementor-3860 .elementor-element-e7a5c01 { background: #fff !important; }
.tfx-exp { max-width: 1080px; margin: 0 auto; padding: 44px 20px 48px; }
.tfx-exp__titulo { margin: 0 0 22px !important; text-align: center; font-family: Oswald, sans-serif !important; font-weight: 400 !important; font-size: 30px !important; line-height: 1.15 !important; letter-spacing: 1px; text-transform: uppercase; color: #4D8022 !important; }
.tfx-exp__caja { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 18px; align-items: stretch; }
.tfx-exp__lado { position: relative; min-height: 220px; }
.tfx-exp__lista { position: absolute; inset: 0; overflow-y: auto; list-style: none !important; margin: 0 !important; padding: 0 !important; border: 1px solid #e3e4e6; background: #fff; }
.tfx-exp__lista li { margin: 0 !important; }
.tfx-exp__item { display: flex; align-items: center; gap: 10px; width: 100%; padding: 13px 14px !important; border: 0 !important; border-bottom: 1px solid #ecedee !important; border-radius: 0 !important; background: #fff !important; color: #474c56 !important; font-family: Quicksand, sans-serif; font-size: 15px !important; line-height: 1.3; text-align: left; cursor: pointer; transition: background .15s; }
.tfx-exp__item:hover { background: #f3f8ec !important; }
.tfx-exp__item.activa { background: #82C341 !important; color: #fff !important; }
.tfx-exp__n { flex: 0 0 auto; font-weight: 700; }
.tfx-exp__t { flex: 1 1 auto; }
.tfx-exp__d { flex: 0 0 auto; font-size: 13px; color: #8a8f98; }
.tfx-exp__item.activa .tfx-exp__d { color: #fff; }
.tfx-exp__video { position: relative; aspect-ratio: 16 / 9; background: #000; }
.tfx-exp__video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 767px) {
  .tfx-exp__caja { grid-template-columns: 1fr; }
  .tfx-exp__video { order: -1; }
  .tfx-exp__lado { min-height: 0; }
  .tfx-exp__lista { position: static; max-height: 320px; }
  .tfx-exp__titulo { font-size: 24px !important; }
}
/* 33.3 Las resenas de Facebook en una franja oscura, justo antes del precio */
.elementor-3860 .elementor-element-a7f3e21 { background: #474C55; padding: 44px 0 40px; margin: 0 -10px 36px !important; width: calc(100% + 20px) !important; max-width: none !important; }
.elementor-3860 .elementor-element-3262b65 { margin-top: 8px !important; }
.elementor-3860 .elementor-element-99ad1cd > .elementor-widget-wrap { margin-top: 0 !important; padding-top: 0 !important; }
.elementor-3860 .tfx-resenas__titulo { color: #82C341 !important; }
.elementor-3860 .tfx-resenas__sub { color: #d5d7da; }
.elementor-3860 .tfx-resenas__sub a { color: #9fd36a; }
.elementor-3860 .tfx-resenas__flecha { background: #82c341; }
.elementor-3860 .tfx-resenas__flecha:hover { background: #9fd36a; }
.elementor-3860 .tfx-resenas__punto { background: #8a8f98; }
.elementor-3860 .tfx-resenas__punto.activa { background: #82c341; }

/* 34 - SIN AZUL DEL TEMA (JH 14-10-2026, web.pptx): el numero de pagina activo (buscador, autor) y el boton «Tweet» de las citas salian con el azul de Astra; ahora con el gris oscuro de los botones de la web. */
.ast-pagination .page-numbers.current, .ast-pagination .page-numbers.current:hover { background: #474C55 !important; border-color: #474C55 !important; color: #fff !important; }
.ast-pagination .page-numbers:not(.current):hover { color: #82C341 !important; border-color: #82C341 !important; }
.uagb-blockquote__tweet-button, .uagb-blockquote__tweet-button:visited { background: #474C55 !important; color: #fff !important; }
.uagb-blockquote__tweet-button:hover { background: #82C341 !important; color: #fff !important; }
.uagb-blockquote__tweet-button svg { fill: currentColor !important; }

/* 35 - LISTA DE ESPERA de /mentoria/ (JH 21-10-2026, TFX- Marketing.pptx): los botones de los planes que no se pueden comprar dicen «Lista de Espera» y abren una ventana con el formulario de Brevo «TendenciasFX - Lista de Espera» (lista TendenciasFX - Newsletter, atributo LISTA_DE_ESPERA, doble confirmacion). */
.tfx-p2__boton.tfx-p2__boton--espera { background: #474C55 !important; cursor: pointer !important; }
.tfx-p2__boton.tfx-p2__boton--espera:hover { background: #82C341 !important; }
.tfx-espera[hidden] { display: none !important; }
.tfx-espera { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 16px; }
.tfx-espera__fondo { position: absolute; inset: 0; background: rgba(20, 22, 26, .6); }
.tfx-espera__caja { position: relative; box-sizing: border-box; width: 100%; max-width: 460px; max-height: calc(100vh - 32px); overflow: auto; padding: 26px 24px 20px; background: #fff; border-radius: 10px; box-shadow: 0 12px 40px rgba(0, 0, 0, .3); text-align: left; }
.tfx-espera__x { position: absolute; top: 6px; right: 8px; padding: 4px 10px !important; background: none !important; border: 0 !important; font-size: 26px !important; line-height: 1 !important; color: #474C55 !important; cursor: pointer; }
.tfx-espera__x:hover { color: #82C341 !important; }
.tfx-espera__titulo { margin: 0 0 10px !important; font-size: 24px !important; line-height: 1.2 !important; color: #2f333a !important; }
.tfx-espera__dolor { margin: 0 0 16px !important; font-size: 15px !important; line-height: 1.55 !important; color: #3a3f47 !important; }
.tfx-espera__dolor[hidden] { display: none !important; }
.tfx-espera__etiqueta { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 600; color: #2f333a; }
.tfx-espera .sib-form-block { margin: 0 0 14px; }
.tfx-espera .entry__choice label { display: flex; align-items: center; gap: 8px; margin: 0 0 4px; font-size: 15px; font-weight: 400; color: #3a3f47; cursor: pointer; }
.tfx-espera__fila { display: flex; flex-wrap: wrap; gap: 8px; }
.tfx-espera__campo { flex: 1 1 200px; min-width: 0; height: 42px !important; margin: 0 !important; padding: 4px 12px !important; font-size: 15px !important; color: #2f333a !important; background: #fff !important; border: 1px solid #dcdcdc !important; border-radius: 6px !important; box-shadow: none !important; }
.tfx-espera__boton { flex: 0 0 auto; display: inline-flex !important; align-items: center; justify-content: center; height: 42px; padding: 0 20px !important; font-size: 15px !important; font-weight: 600 !important; line-height: 1 !important; color: #fff !important; background: #82C341 !important; border: 0 !important; border-radius: 6px !important; cursor: pointer; }
.tfx-espera__boton:hover { background: #6fae33 !important; }
.tfx-espera .sib-hide-loader-icon { display: none !important; }
.tfx-espera .entry__error { display: block; margin-top: 4px; font-size: 13px; color: #b3261e; }
.tfx-espera .entry__error:empty { display: none; }
.tfx-espera .input--hidden { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.tfx-espera .sib-form-message-panel { display: none; margin: 0 0 12px; padding: 8px 12px; font-size: 14px; border-radius: 6px; }
.tfx-espera .sib-form-message-panel--active { display: block !important; }
.tfx-espera__ok { background: #e8f4dc; color: #2e5d10; border-left: 4px solid #72c320; font-weight: 600; }
.tfx-espera__error { background: #fbe9e7; color: #8c1d18; }
.tfx-espera__nota { margin: 4px 0 0 !important; font-size: 13px !important; line-height: 1.45 !important; color: #6b7079 !important; }
.tfx-espera__nombre { display: block; box-sizing: border-box; width: 100%; }
body.tfx-espera-abierta { overflow: hidden; }
@media (max-width: 480px) { .tfx-espera__boton { flex: 1 1 100%; } }

/* 36. Boton apagado («Proximamente»), 24-10-2026 (JH: este año no hay programa de becas; /becas/, widget c944719) */
.tfx-boton-apagado .elementor-button,
.tfx-boton-apagado a.elementor-button-link {
	background: #bfc3c8 !important;
	border-color: #bfc3c8 !important;
	color: #ffffff !important;
	cursor: default !important;
	pointer-events: none !important;
}
