.elementor-kit-49{--e-global-color-primary:#4E94DD;--e-global-color-secondary:#091D2D;--e-global-color-text:#FFFFFF;--e-global-color-accent:#A3A3A3;--e-global-color-cdd0262:#CCD0D3;--e-global-color-26bf093:#90909073;--e-global-color-fc80d3a:#A0419200;--e-global-color-a5ef36f:#E8EEFF;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:16px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:1em;--e-global-typography-primary-letter-spacing:0.5px;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:52px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-text-transform:none;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:48px;--e-global-typography-text-font-weight:700;--e-global-typography-text-text-transform:none;--e-global-typography-text-line-height:1.2em;--e-global-typography-accent-font-family:"Open Sans";--e-global-typography-accent-font-size:18px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.4em;--e-global-typography-2869f48-font-family:"Montserrat";--e-global-typography-2869f48-font-size:17px;--e-global-typography-2869f48-font-weight:600;--e-global-typography-2869f48-text-transform:none;--e-global-typography-2869f48-line-height:1.4em;--e-global-typography-cdcc101-font-family:"Montserrat";--e-global-typography-cdcc101-font-size:38px;--e-global-typography-cdcc101-font-weight:600;--e-global-typography-cdcc101-text-transform:none;--e-global-typography-cdcc101-line-height:1.2em;--e-global-typography-181fec5-font-family:"Montserrat";--e-global-typography-181fec5-font-size:26px;--e-global-typography-181fec5-font-weight:600;--e-global-typography-181fec5-text-transform:none;--e-global-typography-181fec5-line-height:1.3em;--e-global-typography-86b5183-font-family:"Montserrat";--e-global-typography-86b5183-font-size:20px;--e-global-typography-86b5183-font-weight:600;--e-global-typography-86b5183-text-transform:none;--e-global-typography-86b5183-line-height:1.3em;font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-49 button,.elementor-kit-49 input[type="button"],.elementor-kit-49 input[type="submit"],.elementor-kit-49 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-2869f48-font-family ), Sans-serif;font-size:var( --e-global-typography-2869f48-font-size );font-weight:var( --e-global-typography-2869f48-font-weight );text-transform:var( --e-global-typography-2869f48-text-transform );line-height:var( --e-global-typography-2869f48-line-height );color:var( --e-global-color-text );border-radius:0px 0px 0px 0px;padding:15px 30px 15px 30px;}.elementor-kit-49 button:hover,.elementor-kit-49 button:focus,.elementor-kit-49 input[type="button"]:hover,.elementor-kit-49 input[type="button"]:focus,.elementor-kit-49 input[type="submit"]:hover,.elementor-kit-49 input[type="submit"]:focus,.elementor-kit-49 .elementor-button:hover,.elementor-kit-49 .elementor-button:focus{background-color:var( --e-global-color-secondary );color:var( --e-global-color-text );}.elementor-kit-49 e-page-transition{background-color:#FFBC7D;}.elementor-kit-49 p{margin-block-end:18px;}.elementor-kit-49 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-49 h1{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-49 h2{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-49 h3{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-cdcc101-font-family ), Sans-serif;font-size:var( --e-global-typography-cdcc101-font-size );font-weight:var( --e-global-typography-cdcc101-font-weight );text-transform:var( --e-global-typography-cdcc101-text-transform );line-height:var( --e-global-typography-cdcc101-line-height );}.elementor-kit-49 h4{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-181fec5-font-family ), Sans-serif;font-size:var( --e-global-typography-181fec5-font-size );font-weight:var( --e-global-typography-181fec5-font-weight );text-transform:var( --e-global-typography-181fec5-text-transform );line-height:var( --e-global-typography-181fec5-line-height );}.elementor-kit-49 h5{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-86b5183-font-family ), Sans-serif;font-size:var( --e-global-typography-86b5183-font-size );font-weight:var( --e-global-typography-86b5183-font-weight );text-transform:var( --e-global-typography-86b5183-text-transform );line-height:var( --e-global-typography-86b5183-line-height );}.elementor-kit-49 h6{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1250px;}.e-con{--container-max-width:1250px;}.elementor-widget:not(:last-child){--kit-widget-spacing: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 .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-49{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-49 a{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-49 h1{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-49 h2{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-49 h3{font-size:var( --e-global-typography-cdcc101-font-size );line-height:var( --e-global-typography-cdcc101-line-height );}.elementor-kit-49 h4{font-size:var( --e-global-typography-181fec5-font-size );line-height:var( --e-global-typography-181fec5-line-height );}.elementor-kit-49 h5{font-size:var( --e-global-typography-86b5183-font-size );line-height:var( --e-global-typography-86b5183-line-height );}.elementor-kit-49 h6{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-49 button,.elementor-kit-49 input[type="button"],.elementor-kit-49 input[type="submit"],.elementor-kit-49 .elementor-button{font-size:var( --e-global-typography-2869f48-font-size );line-height:var( --e-global-typography-2869f48-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-49{--e-global-typography-primary-font-size:14px;--e-global-typography-secondary-font-size:34px;--e-global-typography-text-font-size:27px;--e-global-typography-accent-font-size:16px;--e-global-typography-2869f48-font-size:15px;--e-global-typography-cdcc101-font-size:26px;--e-global-typography-181fec5-font-size:22px;--e-global-typography-86b5183-font-size:18px;font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-49 a{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-49 h1{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-49 h2{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-49 h3{font-size:var( --e-global-typography-cdcc101-font-size );line-height:var( --e-global-typography-cdcc101-line-height );}.elementor-kit-49 h4{font-size:var( --e-global-typography-181fec5-font-size );line-height:var( --e-global-typography-181fec5-line-height );}.elementor-kit-49 h5{font-size:var( --e-global-typography-86b5183-font-size );line-height:var( --e-global-typography-86b5183-line-height );}.elementor-kit-49 h6{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-49 button,.elementor-kit-49 input[type="button"],.elementor-kit-49 input[type="submit"],.elementor-kit-49 .elementor-button{font-size:var( --e-global-typography-2869f48-font-size );line-height:var( --e-global-typography-2869f48-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Miga de pan: vive dentro del hero oscuro de cada pillar */
.elementor-widget-shortcode .rank-math-breadcrumb{margin:0 0 6px}
.elementor-widget-shortcode .rank-math-breadcrumb p{margin:0;font-size:14px;color:#CCD0D3}
.elementor-widget-shortcode .rank-math-breadcrumb a{color:#CCD0D3;text-decoration:none}
.elementor-widget-shortcode .rank-math-breadcrumb a:hover{color:#FFFFFF}
.elementor-widget-shortcode .rank-math-breadcrumb .separator{color:#4E94DD;padding:0 6px}
.elementor-widget-shortcode .rank-math-breadcrumb .last{color:#FFFFFF}

/* cdhn: proceso paso a paso */
.qodef-qi-process .qodef-e-icon{background:#4E94DD;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex:0 0 44px}
.qodef-qi-process .qodef-e-item-icon-text{color:#FFFFFF;font-family:'Montserrat',sans-serif;font-size:15px;font-weight:700;line-height:1}
.qodef-qi-process .qodef-e-title{margin:0 0 6px}
.qodef-qi-process .qodef-e-text{margin:0}

/* cdhn: fijos */
.cdhn-progress{position:sticky!important;top:0;z-index:99;min-height:4px;padding:0!important}
.cdhn-progress .elementor-widget-progress-tracker{width:100%}
.cdhn-cta-movil{display:none!important}
@media(max-width:767px){.cdhn-cta-movil{display:flex!important;position:fixed!important;left:0;right:0;bottom:0;z-index:998;width:100%!important;max-width:none!important}body{padding-bottom:78px}}

/* cdhn: legibilidad del cuerpo */
/* medida de linea: 150 caracteres eran ilegibles */
.elementor-widget-text-editor p{line-height:1.8}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
/* :where() deja ganar a cualquier alineacion explicita del widget */
:where(.elementor-widget-text-editor){text-align:justify;hyphens:auto;-webkit-hyphens:auto}
/* listas: mismo interlineado que el cuerpo */
.elementor-widget-icon-list .elementor-icon-list-text{line-height:1.55}

/* cdhn: sin justificar en movil - a 40 caracteres la justificacion abre huecos */
@media(max-width:767px){:where(.elementor-widget-text-editor){text-align:start}.elementor-widget-text-editor p{line-height:1.65}}

/* cdhn: medida de las secciones de prosa */
/* Secciones sin rejilla anidada = solo texto. Se estrechan y centran para que
   titulo, parrafos y listas compartan borde y no quede vacio a un lado. */
[data-elementor-type="wp-page"] > .e-con-boxed:not(:has(> .e-con-inner > .e-con)) > .e-con-inner{max-width:1040px}

/* cdhn: tamano del cuerpo */
.elementor-widget-text-editor p,.elementor-widget-text-editor li{font-size:20px}
.elementor-widget-icon-list .elementor-icon-list-text{font-size:17px}
@media(max-width:767px){.elementor-widget-text-editor p,.elementor-widget-text-editor li{font-size:17px}}

/* cdhn: mega menu - anclar el panel a la fila del menu, no al item */
@media(min-width:1025px){
  .elementor-location-header .elementor-widget-ekit-nav-menu{position:static!important}
  .elementor-location-header .elementskit-menu-container{position:static!important}
  .elementskit-navbar-nav > li.elementskit-megamenu-has{position:static!important}
  .elementskit-navbar-nav > li.elementskit-megamenu-has > .elementskit-megamenu-panel{left:0;right:0;width:auto!important;max-width:none;box-shadow:0 12px 28px rgba(9,29,45,.14);border-radius:0 0 8px 8px}
}

/* cdhn: correcciones movil */
/* 1. Tarjeta entera tappable: el enlace del titulo se extiende sobre la tarjeta */
.elementor-widget-icon-box{position:relative}
.elementor-widget-icon-box .elementor-icon-box-title a::after{content:'';position:absolute;inset:0;z-index:1}
.elementor-widget-icon-box .elementor-icon-box-icon a{position:relative;z-index:2}
/* 3. Evitar el zoom automatico de iOS: los campos necesitan 16px minimo */
.elementor-form .elementor-field-textual,
.elementor-form input[type=text],.elementor-form input[type=email],
.elementor-form input[type=tel],.elementor-form input[type=url],
.elementor-form textarea,.elementor-form select,
.e-search-input{font-size:16px!important}
/* altura de campos: objetivo tactil comodo */
.elementor-form .elementor-field-textual{min-height:46px;padding-top:10px;padding-bottom:10px}
.elementor-form textarea.elementor-field-textual{min-height:120px}

/* 4. Casilla de consentimiento: de 13px a objetivo tactil real */
.elementor-field-type-acceptance input[type=checkbox]{width:22px;height:22px;min-width:22px;margin-right:10px;accent-color:#4E94DD}
.elementor-field-type-acceptance .elementor-field-option{display:flex;align-items:flex-start;gap:4px;min-height:44px;padding:6px 0}
.elementor-field-type-acceptance label{line-height:1.45;padding:2px 0}
/* 2. Barra fija: altura predecible y hueco equivalente al final del body */
@media(max-width:767px){
  .cdhn-cta-movil{flex-wrap:nowrap!important;align-items:center!important;gap:12px}
  .cdhn-cta-movil > .elementor-element{width:auto!important;max-width:none!important}
  .cdhn-cta-movil .elementor-widget-text-editor{flex:1 1 auto;min-width:0}
  .cdhn-cta-movil .elementor-widget-text-editor p{font-size:14px!important;line-height:1.25!important;margin:0}
  .cdhn-cta-movil .elementor-widget-button{flex:0 0 auto}
  .cdhn-cta-movil .elementor-button{padding:12px 20px!important}
}


/* cdhn: panel movil del mega menu */
/* El azul de la regla global de <a> gana al color del widget y queda en 3:1 sobre blanco */
.elementskit-megamenu-panel .elementor-icon-list-item > a,
.elementskit-megamenu-panel .elementor-icon-list-item > a .elementor-icon-list-text{color:#4D4D4D}
.elementskit-megamenu-panel .elementor-icon-list-item > a:hover .elementor-icon-list-text{color:#4E94DD}
@media (max-width:1024px){
  /* objetivo tactil real: el enlace medía 26px de alto */
  .elementskit-megamenu-panel .elementor-icon-list-item > a{display:flex;align-items:center;min-height:44px;padding:2px 0}
  .elementskit-megamenu-panel .elementor-icon-list-item{margin-bottom:0!important}
}


/* cdhn: encabezado movil - una sola fila */
@media (max-width:767px){
  /* la raiz recibe --flex-direction:row pero una regla posterior la fuerza a column */
  .elementor-element-545ff66c{flex-direction:row!important;align-items:center!important;flex-wrap:nowrap!important}
  /* los hijos llevan --width:100%, por eso cada banda ocupaba una linea */
  .elementor-element-7bb603a0{width:auto!important;flex:1 1 auto!important;min-width:0}
  .elementor-element-dd7175e{width:auto!important;align-items:flex-start!important}
  /* traia margin-bottom:-70px para solapar el hero; en la fila unica descuadra */
  .elementor-element-29888f64{width:auto!important;flex:0 0 auto!important;margin-bottom:0!important}
  /* el logo medIa 112px de alto; a 150px de ancho quedan 50 */
  .elementor-element-215e8ae img{width:150px;height:auto;display:block}
  /* la hamburguesa medIa 45x33, por debajo del minimo tactil */
  /* flex-direction:column es obligatorio: las 3 barras son spans y en fila se solapan en un guion */
  .elementskit-menu-hamburger{min-width:44px;min-height:44px;display:flex!important;flex-direction:column;justify-content:center;align-items:stretch}
  .elementskit-menu-close{min-width:44px;min-height:44px;display:flex!important;align-items:center;justify-content:center}
}

/* cdhn: botones del hero en movil */
/* quedaban a la izquierda con 130-170px muertos a la derecha, y con anchos distintos entre si */
@media (max-width:767px){
  [data-elementor-type="wp-page"] > .e-con:first-of-type .elementor-widget-button .elementor-button{
    display:flex;width:100%;justify-content:center;text-align:center
  }
}/* End custom CSS */