/* TU ROPA DE TRABAJO · CMS pages v1.0 — only static content pages. */
/* The theme's page heading sits OUTSIDE .page-cms, so scope via body#cms. */
body#cms #main .page-header { margin: 0 0 23px; padding: 0; border: 0; }
body#cms #main .page-header h1,
body#cms #main h1.page-title { font-family: Open Sans, Arial, sans-serif; font-size: clamp(25px, 2.3vw, 34px) !important; font-weight: 700; line-height: 1.23 !important; letter-spacing: -.025em; color: #0A1675; margin: 0 !important; padding: 0 !important; height: auto !important; min-height: 0 !important; }
/* Normalise legacy rich-text HTML imported from the previous site. */
body#cms .tdt-cms-page { max-width: 1100px; width: 100%; margin: 0 auto 48px; padding: 0 18px; background: transparent; font-family: Open Sans, Arial, sans-serif; font-size: 15px; line-height: 1.75; color: #34415a; overflow-wrap: break-word; }
body#cms .tdt-cms-page :is(h1,h2,h3,h4,h5,h6) { font-family: Open Sans, Arial, sans-serif; color: #0A1675; font-weight: 700; line-height: 1.3 !important; letter-spacing: -.015em; height: auto !important; min-height: 0 !important; max-height: none !important; padding-top: 0 !important; padding-bottom: 0 !important; clear: none; }
body#cms .tdt-cms-page h1 { font-size: clamp(24px, 2.2vw, 32px) !important; margin: 0 0 19px !important; }
body#cms .tdt-cms-page h2 { font-size: clamp(21px, 1.8vw, 26px) !important; margin: 27px 0 13px !important; }
body#cms .tdt-cms-page h3 { font-size: clamp(18px, 1.45vw, 21px) !important; margin: 23px 0 11px !important; }
body#cms .tdt-cms-page h4 { font-size: 17px !important; margin: 20px 0 9px !important; }
body#cms .tdt-cms-page h5, body#cms .tdt-cms-page h6 { font-size: 15px !important; margin: 17px 0 8px !important; }
body#cms .tdt-cms-page p { margin: 0 0 15px; line-height: 1.75 !important; min-height: 0 !important; height: auto !important; }
body#cms .tdt-cms-page :is(h1,h2,h3,h4,h5,h6) + p { margin-top: 0 !important; }
body#cms .tdt-cms-page :is(ul,ol) { margin: 8px 0 20px; padding-left: 25px; }
body#cms .tdt-cms-page li { margin-bottom: 7px; line-height: 1.65; }
body#cms .tdt-cms-page a { color: #0A1675; text-decoration-color: #C75125; text-underline-offset: 3px; }
body#cms .tdt-cms-page a:hover { color: #C75125; }
body#cms .tdt-cms-page strong, body#cms .tdt-cms-page b { font-weight: 700; }
body#cms .tdt-cms-page img { max-width: 100%; height: auto; }
body#cms .tdt-cms-page table { max-width: 100%; border-collapse: collapse; }
body#cms .tdt-cms-page td, body#cms .tdt-cms-page th { padding: 10px 12px; border: 1px solid #e3e7ed; vertical-align: top; }
body#cms .tdt-cms-page blockquote { padding: 15px 22px; margin: 20px 0; border-left: 3px solid #C75125; background: #f6f7fa; }
body#cms .tdt-cms-page hr { border: 0; border-top: 1px solid #e5e8ef; margin: 24px 0; }
/* Legacy editor sometimes inserts empty spacer paragraphs. Avoid unintended gaps. */
body#cms .tdt-cms-page p:empty { display: none; }
@media (max-width: 767px) { body#cms .tdt-cms-page { padding: 0 10px; font-size: 14px; margin-bottom: 30px; } body#cms .tdt-cms-page h2 { margin-top: 22px !important; } body#cms .tdt-cms-page table { display: block; overflow-x: auto; } }

/* v2: mismo eje y anchura para titulo y contenidos; ocultar titulo exterior duplicado. */
body#cms #main > .page-header { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
body#cms nav.breadcrumb, body#cms .breadcrumb { display:none!important; }
body#cms #main .tdt-cms-page { width:100%; max-width:none; margin:0 0 42px; padding:6px 0 0; box-shadow:none; border:0; }
body#cms #main .tdt-cms-page :is(h1,h2,h3,h4) { color:#0A1675!important; }
/* El editor heredado utiliza negritas como preguntas/titulares. */
body#cms #main .tdt-cms-page p > strong:only-child,
body#cms #main .tdt-cms-page p > b:only-child { color:#0A1675; font-weight:700; }
body#cms #main .tdt-cms-page p > strong,
body#cms #main .tdt-cms-page p > b { color:#26344b; }
/* El primer titulo del contenido se presenta como titular de pagina. */
body#cms #main .tdt-cms-page > h1:first-child,
body#cms #main .tdt-cms-page > h2:first-child { margin-top:0!important; }
@media (max-width:767px) { body#cms #main .tdt-cms-page { padding:6px 0 0; margin-bottom:28px; } }

/* v3 — Columna de lectura CMS centrada, sin centrar el texto ni separar las viñetas. */
body#cms #main .tdt-cms-page {
  box-sizing: border-box;
  width: 100%;
  max-width: 920px;
  margin: 0 auto 42px;
  padding: 6px 24px 0;
  text-align: left;
}
/* Viñetas junto al contenido y listas anidadas con sangría proporcionada. */
body#cms #main .tdt-cms-page ul,
body#cms #main .tdt-cms-page ol {
  width: auto;
  max-width: 100%;
  margin: 8px 0 20px;
  padding-left: 24px;
  list-style-position: outside;
  text-align: left;
}
body#cms #main .tdt-cms-page li { padding-left: 2px; }
body#cms #main .tdt-cms-page li > ul,
body#cms #main .tdt-cms-page li > ol { margin: 6px 0 10px; padding-left: 22px; }
@media (max-width: 767px) {
  body#cms #main .tdt-cms-page { max-width: 100%; padding: 6px 16px 0; margin: 0 auto 28px; }
  body#cms #main .tdt-cms-page ul,
  body#cms #main .tdt-cms-page ol { padding-left: 22px; }
}

/* v4 — Contenido compacto alineado a la IZQUIERDA del contenedor principal.
   No centrar el bloque ni los textos. Mantener bullets junto al texto. */
body#cms #main .tdt-cms-page {
  width: 100%;
  max-width: 920px;
  margin: 0 0 46px !important;
  padding: 6px 0 0 !important;
  text-align: left;
}
/* Jerarquía clara sin tamaños enormes ni interlineados heredados. */
body#cms #main .tdt-cms-page h1 {
  font-size: 29px !important;
  line-height: 1.28 !important;
  font-weight: 750 !important;
  margin: 0 0 21px !important;
}
body#cms #main .tdt-cms-page h2 {
  font-size: 23px !important;
  line-height: 1.35 !important;
  font-weight: 750 !important;
  margin: 32px 0 12px !important;
}
body#cms #main .tdt-cms-page h3 {
  font-size: 19px !important;
  line-height: 1.38 !important;
  font-weight: 750 !important;
  margin: 26px 0 10px !important;
  border-left: 3px solid #C75125;
  padding: 1px 0 1px 12px !important;
}
body#cms #main .tdt-cms-page h4 {
  font-size: 16px !important;
  line-height: 1.4 !important;
  font-weight: 750 !important;
  margin: 22px 0 9px !important;
}
/* El HTML antiguo suele usar <p><strong>Pregunta...</strong></p> en vez de H3. */
body#cms #main .tdt-cms-page p > strong:only-child,
body#cms #main .tdt-cms-page p > b:only-child {
  color: #0A1675 !important;
  font-weight: 750 !important;
  font-size: 16px;
  line-height: 1.45;
}
body#cms #main .tdt-cms-page p:has(> strong:only-child),
body#cms #main .tdt-cms-page p:has(> b:only-child) {
  margin-top: 22px;
  margin-bottom: 8px;
}
body#cms #main .tdt-cms-page ul,
body#cms #main .tdt-cms-page ol {
  margin-left: 0 !important;
  padding-left: 25px !important;
  list-style-position: outside !important;
}
body#cms #main .tdt-cms-page li { padding-left: 0 !important; }
@media(max-width: 767px) {
  body#cms #main .tdt-cms-page { max-width: 100%; padding: 6px 0 0 !important; }
  body#cms #main .tdt-cms-page h1 { font-size: 25px !important; }
  body#cms #main .tdt-cms-page h2 { font-size: 21px !important; }
  body#cms #main .tdt-cms-page h3 { font-size: 18px !important; }
}

/* v4.1 — eliminar marcas naranjas de títulos vacíos importados del CMS. */
body#cms #main .tdt-cms-page :is(h1,h2,h3,h4,h5,h6):empty,
body#cms #main .tdt-cms-page :is(h1,h2,h3,h4,h5,h6):has(> br:only-child),
body#cms #main .tdt-cms-page p:has(> br:only-child) {
  display: none !important;
}
/* Secciones más juntas, manteniendo la jerarquía visual y el detalle naranja. */
body#cms #main .tdt-cms-page h2 { margin-top: 23px !important; margin-bottom: 9px !important; }
body#cms #main .tdt-cms-page h3 { margin-top: 17px !important; margin-bottom: 7px !important; }
body#cms #main .tdt-cms-page h4 { margin-top: 16px !important; margin-bottom: 7px !important; }
body#cms #main .tdt-cms-page p { margin-bottom: 11px; }
body#cms #main .tdt-cms-page p:has(> strong:only-child),
body#cms #main .tdt-cms-page p:has(> b:only-child) { margin-top: 15px; margin-bottom: 6px; }
body#cms #main .tdt-cms-page :is(ul,ol) { margin-bottom: 13px; }
