.elementor-kit-12197{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-bd2c3be:#6C9F50;--e-global-color-4c01225:#90214A;--e-global-typography-primary-font-family:"Titillium Web";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Titillium Web";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Titillium Web";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Titillium Web";--e-global-typography-accent-font-weight:500;color:#262F33;font-family:"Titillium Web", Sans-serif;font-size:16px;}.elementor-kit-12197 e-page-transition{background-color:#FFBC7D;}.elementor-kit-12197 h1{color:#00533E;font-family:"Titillium Web", Sans-serif;font-size:40px;font-weight:700;line-height:30px;}.elementor-kit-12197 h2{color:#00533E;font-family:"Titillium Web", Sans-serif;font-size:37px;font-weight:700;line-height:30px;}.elementor-kit-12197 h3{color:#00533E;font-family:"Titillium Web", Sans-serif;font-size:30px;font-weight:600;text-transform:uppercase;line-height:50px;}.elementor-kit-12197 h4{color:#90214A;font-family:"Titillium Web", Sans-serif;font-size:25px;font-weight:600;text-transform:none;line-height:30px;}.elementor-kit-12197 h5{color:#000000;font-family:"Titillium Web", Sans-serif;font-weight:600;}.elementor-kit-12197 button,.elementor-kit-12197 input[type="button"],.elementor-kit-12197 input[type="submit"],.elementor-kit-12197 .elementor-button{font-family:"Titillium Web", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header{padding-inline-end:52px;padding-inline-start:52px;}.site-header .site-branding .site-logo img{width:67px;max-width:67px;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Titillium+Web:wght@300;400;600;700&display=swap');

/* =========================================================
   1. FUENTE Y AJUSTES GENERALES
   ========================================================= */

html,
body,
* {
  font-family: 'Titillium Web', sans-serif;
}

html,
body {
  overflow-x: hidden;
}

/* Evita desbordamientos en estructuras de Elementor */
.elementor-section,
.elementor-container,
.elementor-widget-wrap,
.e-con,
.e-con-inner {
  max-width: 100%;
  box-sizing: border-box;
}



/* =========================================================
   2. TÍTULOS GENERALES
   ========================================================= */

h1::first-letter,
h2::first-letter,
h3::first-letter,
h4::first-letter,
h5::first-letter,
h6::first-letter {
  text-transform: uppercase;
}

h1,
h2 {
  padding-top: 20px;
  padding-bottom: 10px;
}

h1 {
  padding-bottom: 0;
}

h3,
h4 {
  padding-top: 0;
  padding-bottom: 0;
}

h5 {
  text-align: right;
}


/* =========================================================
   3. CLASES PROPIAS
   ========================================================= */



.firma {
  font-size: 13px;
  font-weight: 700;
}


/* =========================================================
   4. ENLACES
   ========================================================= */

a {
  color: #90214a;
}

.Hyperlink {
  color: #90214a;
  text-decoration: underline;
  cursor: pointer;
}


/* =========================================================
   5. EASY TABLE OF CONTENTS
   Mantener únicamente si todavía hay entradas que usen
   el plugin Easy Table of Contents.
   ========================================================= */

#ez-toc-container {
  border: 0;
  font-size: 1.2em;
}

.ez-toc-link.ez-toc-heading-2::first-letter {
  text-transform: uppercase;
}


/* =========================================================
   6. CABECERA DE LAS ENTRADAS BICI — ESCRITORIO
   Tablet y móvil se gestionan mediante sus bloques propios.
   ========================================================= */

@media (min-width: 1025px) {

  /* Primera sección Elementor de la entrada */
  .single-post .elementor-section:first-of-type,
  .single-post .elementor-top-section:first-of-type {
    width: 100%;
    max-width: 100%;
    overflow: hidden !important;
    box-sizing: border-box;
  }

  /* Contenedor de la cabecera */
  .single-post .elementor-section:first-of-type > .elementor-container,
  .single-post .elementor-top-section:first-of-type > .elementor-container {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: flex !important;
    align-items: center !important;
  }

  /* Primera columna: BICI */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(1),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(1) {
    width: 24% !important;
    max-width: 24% !important;
  }

  /* Segunda columna: título */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(2),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(2) {
    width: 48% !important;
    max-width: 48% !important;
  }

  /* Tercera columna: datos */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(3),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(3) {
    width: 28% !important;
    max-width: 28% !important;
  }

  /* Texto BICI */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(1) .elementor-heading-title,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(1) .elementor-heading-title {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 120px !important;
    font-weight: 300 !important;
    line-height: 0.9 !important;
    letter-spacing: 0.04em !important;
    white-space: nowrap !important;
  }

  /* Título principal */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(2) .elementor-heading-title,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(2) .elementor-heading-title {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 40px !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  /* Datos de la derecha */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-text,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-text {
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
  }

  /* Iconos de la derecha */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-icon,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-icon {
    display: flex !important;
    align-items: center !important;
  }
}


/* =========================================================
   7. CABECERA — ESCRITORIO MEDIO
   ========================================================= */

@media (max-width: 1400px) and (min-width: 1025px) {

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(1) .elementor-heading-title,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(1) .elementor-heading-title {
    font-size: 82px !important;
    font-weight: 300 !important;
  }

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(2) .elementor-heading-title,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(2) .elementor-heading-title {
    font-size: 34px !important;
    font-weight: 600 !important;
  }

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-text,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-text {
    font-size: 18px !important;
  }
}


/* =========================================================
   8. CABECERA — ZONA ENTRE TABLET Y ESCRITORIO
   ========================================================= */

@media (max-width: 1200px) and (min-width: 1025px) {

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(1),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(1) {
    width: 22% !important;
    max-width: 22% !important;
  }

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(2),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(2) {
    width: 50% !important;
    max-width: 50% !important;
  }

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(3),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(3) {
    width: 28% !important;
    max-width: 28% !important;
  }

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(1) .elementor-heading-title,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(1) .elementor-heading-title {
    font-size: 80px !important;
    font-weight: 300 !important;
  }

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(2) .elementor-heading-title,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(2) .elementor-heading-title {
    font-size: 29px !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
  }

  .single-post .elementor-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-text,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-text {
    font-size: 16px !important;
  }
}


/* =========================================================
   9. CABECERA — TABLET HORIZONTAL
   ========================================================= */

@media (max-width: 1024px) and (min-width: 768px) {

  .single-post .elementor-section:first-of-type,
  .single-post .elementor-top-section:first-of-type {
    overflow: hidden !important;
  }

  .single-post .elementor-section:first-of-type > .elementor-container,
  .single-post .elementor-top-section:first-of-type > .elementor-container {
    max-width: 100% !important;
    display: flex !important;
    align-items: center !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  /* Columna BICI */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(1),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(1) {
    width: 28% !important;
    max-width: 28% !important;
  }

  /* Columna título */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(2),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(2) {
    width: 42% !important;
    max-width: 42% !important;
  }

  /* Columna datos */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(3),
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(3) {
    width: 30% !important;
    max-width: 30% !important;
  }

  /* Texto BICI */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(1) .elementor-heading-title,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(1) .elementor-heading-title {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 80px !important;
    font-weight: 300 !important;
    line-height: 0.85 !important;
    letter-spacing: 0.06em !important;
    color: #ffffff !important;
    white-space: nowrap !important;
  }

  /* Título */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(2) .elementor-heading-title,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(2) .elementor-heading-title {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 25px !important;
    font-weight: 600 !important;
    line-height: 1.18 !important;
  }

  /* Datos de la derecha */
  .single-post .elementor-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-text,
  .single-post .elementor-top-section:first-of-type .elementor-column:nth-child(3) .elementor-icon-list-text {
    font-size: 15px !important;
    line-height: 1.3 !important;
  }
}


/* =========================================================
   10. TABLA DE CONTENIDOS DE ELEMENTOR — ÍNDICE BICI
   Se aplica globalmente a todas las entradas.
   ========================================================= */

/* Cuerpo del índice */
.elementor-widget-table-of-contents .elementor-toc__body {
  padding-top: 10px;
}

/* Limpiar listas */
.elementor-widget-table-of-contents .elementor-toc__list-wrapper,
.elementor-widget-table-of-contents .elementor-toc__list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Elementos de lista */
.elementor-widget-table-of-contents .elementor-toc__list-item {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  line-height: 1.4;
}

/* Contenedor intermedio de Elementor */
.elementor-widget-table-of-contents .elementor-toc__list-item-text-wrapper {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Enlaces generales del índice */
.elementor-widget-table-of-contents .elementor-toc__list-item-text {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 4px 0;
  color: #222;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.45;
  text-transform: none !important;
  text-decoration: none;
}

/* Ocultar iconos o símbolos automáticos */
.elementor-widget-table-of-contents .elementor-toc__list-item-text-wrapper i,
.elementor-widget-table-of-contents .elementor-toc__list-item-text-wrapper svg,
.elementor-widget-table-of-contents .elementor-toc__list-item-text-icon {
  display: none !important;
}


/* ---------- Primer nivel: H2 ---------- */

.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item {
  margin-top: 20px !important;
  margin-bottom: 8px !important;
}

.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item:first-child {
  margin-top: 0 !important;
}

.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item
> .elementor-toc__list-item-text-wrapper
> .elementor-toc__list-item-text {
  padding: 0 !important;
  color: #222;
  font-size: 18px;
  font-weight: 700 !important;
  line-height: 1.3;
    text-transform: uppercase !important;
}

/* Mantener negrita aunque Elementor añada etiquetas internas */
.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item
> .elementor-toc__list-item-text-wrapper
> .elementor-toc__list-item-text * {
  font-weight: 700 !important;
}


/* ---------- Segundo nivel: H3 ---------- */

.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item
> .elementor-toc__list-wrapper {
  margin: 8px 0 14px 40px !important;
  padding: 0 !important;
}

.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item
> .elementor-toc__list-wrapper
> .elementor-toc__list-item {
  margin: 0 0 8px !important;
}

.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item
> .elementor-toc__list-wrapper
> .elementor-toc__list-item
> .elementor-toc__list-item-text-wrapper
> .elementor-toc__list-item-text {
  padding: 2px 0 !important;
  color: #222;
  font-size: 16px;
  font-weight: 400 !important;
  line-height: 1.45;
  text-transform: none !important;
}


/* ---------- Tercer nivel: H4, si existe ---------- */

.elementor-widget-table-of-contents
.elementor-toc__list-wrapper
.elementor-toc__list-wrapper
.elementor-toc__list-wrapper {
  margin: 6px 0 10px 28px !important;
  padding: 0 !important;
}

.elementor-widget-table-of-contents
.elementor-toc__list-wrapper
.elementor-toc__list-wrapper
.elementor-toc__list-wrapper
.elementor-toc__list-item-text {
  font-size: 15px;
  font-weight: 400 !important;
}


/* ---------- Interacción ---------- */

.elementor-widget-table-of-contents .elementor-toc__list-item-text:hover,
.elementor-widget-table-of-contents .elementor-toc__list-item-text:focus {
  color: #90214a;
  text-decoration: underline;
}

.elementor-widget-table-of-contents .elementor-toc__list-item-text.elementor-item-active {
  color: #90214a;
}

/* H2 activo en negrita */
.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item
> .elementor-toc__list-item-text-wrapper
> .elementor-toc__list-item-text.elementor-item-active {
  font-weight: 700 !important;

}

/* H3 activo con seminegrita */
.elementor-widget-table-of-contents
.elementor-toc__body
> .elementor-toc__list-wrapper
> .elementor-toc__list-item
> .elementor-toc__list-wrapper
.elementor-toc__list-item-text.elementor-item-active {
  font-weight: 600 !important;
}


/* =========================================================
   11. TABLA DE CONTENIDOS — MÓVIL
   ========================================================= */

@media (max-width: 767px) {

  /* H2 */
  .elementor-widget-table-of-contents
  .elementor-toc__body
  > .elementor-toc__list-wrapper
  > .elementor-toc__list-item
  > .elementor-toc__list-item-text-wrapper
  > .elementor-toc__list-item-text {
    font-size: 17px;
  }

  /* H3 con menor sangría */
  .elementor-widget-table-of-contents
  .elementor-toc__body
  > .elementor-toc__list-wrapper
  > .elementor-toc__list-item
  > .elementor-toc__list-wrapper {
    margin-left: 24px !important;
  }

  .elementor-widget-table-of-contents
  .elementor-toc__list-wrapper
  .elementor-toc__list-item-text {
    font-size: 15px;
  }
}/* End custom CSS */