.elementor-kit-20{--e-global-color-primary:#0E1B33;--e-global-color-secondary:#1F54BF;--e-global-color-text:#4D5769;--e-global-color-accent:#E4EDF7;--e-global-color-8c46882:#16264A;--e-global-color-49d058e:#F7FAFD;--e-global-color-e887611:#9AA6B8;--e-global-color-c9b8897:#F7FAFD30;--e-global-color-9934b86:#F7FAFD61;--e-global-color-40db435:#0E1B334F;--e-global-color-a963af3:#0E1B3333;--e-global-color-0b0ffe9:#F7FAFD26;--e-global-color-ce1e57e:#ABD4E6;--e-global-color-1aa4d0a:#9389CC;--e-global-color-b1e4f01:#1A46A0;--e-global-color-f0e9a11:#000000;--e-global-color-ffbb102:#FFFFFF;--e-global-typography-primary-font-family:"Manrope";--e-global-typography-primary-font-size:65px;--e-global-typography-primary-font-weight:500;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Manrope";--e-global-typography-secondary-font-size:48px;--e-global-typography-secondary-font-weight:500;--e-global-typography-secondary-text-transform:uppercase;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-size:23px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.2em;--e-global-typography-e6f820d-font-family:"Old Standard TT";--e-global-typography-e6f820d-font-size:65px;--e-global-typography-e6f820d-font-weight:500;--e-global-typography-e6f820d-text-transform:uppercase;--e-global-typography-e6f820d-font-style:italic;--e-global-typography-e6f820d-line-height:1.2em;--e-global-typography-2c8795e-font-family:"Manrope";--e-global-typography-2c8795e-font-size:14px;--e-global-typography-2c8795e-font-weight:500;--e-global-typography-2c8795e-text-transform:uppercase;--e-global-typography-2c8795e-line-height:1.2em;--e-global-typography-d309300-font-family:"Manrope";--e-global-typography-d309300-font-size:15px;--e-global-typography-d309300-font-weight:500;--e-global-typography-d309300-text-transform:uppercase;--e-global-typography-d309300-line-height:1.2em;--e-global-typography-cdaa732-font-family:"Old Standard TT";--e-global-typography-cdaa732-font-size:48px;--e-global-typography-cdaa732-font-weight:500;--e-global-typography-cdaa732-text-transform:uppercase;--e-global-typography-cdaa732-font-style:italic;--e-global-typography-cdaa732-line-height:1.2em;--e-global-typography-72002a0-font-family:"Manrope";--e-global-typography-72002a0-font-size:35px;--e-global-typography-72002a0-font-weight:500;--e-global-typography-72002a0-text-transform:uppercase;--e-global-typography-72002a0-line-height:1.2em;--e-global-typography-f92df44-font-family:"Manrope";--e-global-typography-f92df44-font-size:26px;--e-global-typography-f92df44-font-weight:500;--e-global-typography-f92df44-text-transform:uppercase;--e-global-typography-f92df44-line-height:1.2em;--e-global-typography-3c0c292-font-family:"Manrope";--e-global-typography-3c0c292-font-size:14px;--e-global-typography-3c0c292-line-height:1.6em;--e-global-typography-3e9bd11-font-family:"Manrope";--e-global-typography-3e9bd11-font-size:20px;--e-global-typography-3e9bd11-font-weight:500;--e-global-typography-3e9bd11-text-transform:uppercase;--e-global-typography-3e9bd11-line-height:1.2em;--e-global-typography-d3c3ce3-font-family:"Manrope";--e-global-typography-d3c3ce3-font-size:18px;--e-global-typography-d3c3ce3-font-weight:500;--e-global-typography-d3c3ce3-text-transform:uppercase;--e-global-typography-d3c3ce3-line-height:1.2em;--e-global-typography-bf348a6-font-family:"Manrope";--e-global-typography-bf348a6-font-size:15px;--e-global-typography-bf348a6-font-weight:400;--e-global-typography-bf348a6-text-transform:none;--e-global-typography-bf348a6-line-height:1.6em;--e-global-typography-2598b3a-font-family:"Manrope";--e-global-typography-2598b3a-font-size:22px;--e-global-typography-2598b3a-font-weight:500;--e-global-typography-2598b3a-text-transform:uppercase;--e-global-typography-2598b3a-line-height:1.2em;--e-global-typography-bb52fa3-font-family:"Manrope";--e-global-typography-bb52fa3-font-size:16px;--e-global-typography-bb52fa3-font-weight:500;--e-global-typography-bb52fa3-text-transform:uppercase;--e-global-typography-bb52fa3-line-height:1.2em;--e-global-typography-10e267f-font-family:"Old Standard TT";--e-global-typography-10e267f-font-size:150px;--e-global-typography-10e267f-font-weight:500;--e-global-typography-10e267f-text-transform:uppercase;--e-global-typography-10e267f-font-style:italic;--e-global-typography-10e267f-line-height:0.9em;--e-global-typography-a46d01d-font-family:"Manrope";--e-global-typography-a46d01d-font-size:150px;--e-global-typography-a46d01d-font-weight:500;--e-global-typography-a46d01d-text-transform:uppercase;--e-global-typography-a46d01d-line-height:0.9em;background-color:var( --e-global-color-49d058e );color:var( --e-global-color-text );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-20 button,.elementor-kit-20 input[type="button"],.elementor-kit-20 input[type="submit"],.elementor-kit-20 .elementor-button{background-color:var( --e-global-color-secondary );font-family:var( --e-global-typography-d309300-font-family ), Sans-serif;font-size:var( --e-global-typography-d309300-font-size );font-weight:var( --e-global-typography-d309300-font-weight );text-transform:var( --e-global-typography-d309300-text-transform );line-height:var( --e-global-typography-d309300-line-height );color:var( --e-global-color-49d058e );border-style:none;border-radius:0px 0px 0px 0px;padding:15px 25px 15px 25px;}.elementor-kit-20 button:hover,.elementor-kit-20 button:focus,.elementor-kit-20 input[type="button"]:hover,.elementor-kit-20 input[type="button"]:focus,.elementor-kit-20 input[type="submit"]:hover,.elementor-kit-20 input[type="submit"]:focus,.elementor-kit-20 .elementor-button:hover,.elementor-kit-20 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-49d058e );border-style:none;border-radius:0px 0px 0px 0px;}.elementor-kit-20 e-page-transition{background-color:#FFBC7D;}.elementor-kit-20 a{color:var( --e-global-color-secondary );}.elementor-kit-20 h1{color:var( --e-global-color-primary );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-20 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-72002a0-font-family ), Sans-serif;font-size:var( --e-global-typography-72002a0-font-size );font-weight:var( --e-global-typography-72002a0-font-weight );text-transform:var( --e-global-typography-72002a0-text-transform );line-height:var( --e-global-typography-72002a0-line-height );}.elementor-kit-20 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-f92df44-font-family ), Sans-serif;font-size:var( --e-global-typography-f92df44-font-size );font-weight:var( --e-global-typography-f92df44-font-weight );text-transform:var( --e-global-typography-f92df44-text-transform );line-height:var( --e-global-typography-f92df44-line-height );}.elementor-kit-20 h4{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 );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-20 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-3e9bd11-font-family ), Sans-serif;font-size:var( --e-global-typography-3e9bd11-font-size );font-weight:var( --e-global-typography-3e9bd11-font-weight );text-transform:var( --e-global-typography-3e9bd11-text-transform );line-height:var( --e-global-typography-3e9bd11-line-height );}.elementor-kit-20 h6{color:var( --e-global-color-primary );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-20 label{color:var( --e-global-color-primary );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-20 input:not([type="button"]):not([type="submit"]),.elementor-kit-20 textarea,.elementor-kit-20 .elementor-field-textual{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 );color:var( --e-global-color-primary );accent-color:var( --e-global-color-accent );background-color:var( --e-global-color-accent );border-style:none;border-radius:0px 0px 0px 0px;}.elementor-kit-20 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-20 textarea:focus,.elementor-kit-20 .elementor-field-textual:focus{border-style:none;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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-20{--e-global-typography-primary-font-size:52px;--e-global-typography-secondary-font-size:43px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:23px;--e-global-typography-e6f820d-font-size:52px;--e-global-typography-2c8795e-font-size:14px;--e-global-typography-d309300-font-size:15px;--e-global-typography-cdaa732-font-size:43px;--e-global-typography-72002a0-font-size:30px;--e-global-typography-f92df44-font-size:25px;--e-global-typography-3c0c292-font-size:14px;--e-global-typography-3e9bd11-font-size:20px;--e-global-typography-d3c3ce3-font-size:18px;--e-global-typography-bf348a6-font-size:15px;--e-global-typography-2598b3a-font-size:22px;--e-global-typography-bb52fa3-font-size:16px;--e-global-typography-10e267f-font-size:100px;--e-global-typography-a46d01d-font-size:100px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-20 h1{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-20 h2{font-size:var( --e-global-typography-72002a0-font-size );line-height:var( --e-global-typography-72002a0-line-height );}.elementor-kit-20 h3{font-size:var( --e-global-typography-f92df44-font-size );line-height:var( --e-global-typography-f92df44-line-height );}.elementor-kit-20 h4{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-20 h5{font-size:var( --e-global-typography-3e9bd11-font-size );line-height:var( --e-global-typography-3e9bd11-line-height );}.elementor-kit-20 h6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-20 button,.elementor-kit-20 input[type="button"],.elementor-kit-20 input[type="submit"],.elementor-kit-20 .elementor-button{font-size:var( --e-global-typography-d309300-font-size );line-height:var( --e-global-typography-d309300-line-height );}.elementor-kit-20 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-20 input:not([type="button"]):not([type="submit"]),.elementor-kit-20 textarea,.elementor-kit-20 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-20{--e-global-typography-primary-font-size:40px;--e-global-typography-secondary-font-size:34px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:23px;--e-global-typography-e6f820d-font-size:40px;--e-global-typography-2c8795e-font-size:14px;--e-global-typography-d309300-font-size:15px;--e-global-typography-cdaa732-font-size:34px;--e-global-typography-72002a0-font-size:28px;--e-global-typography-f92df44-font-size:24px;--e-global-typography-3c0c292-font-size:14px;--e-global-typography-3e9bd11-font-size:20px;--e-global-typography-d3c3ce3-font-size:18px;--e-global-typography-bf348a6-font-size:15px;--e-global-typography-2598b3a-font-size:22px;--e-global-typography-bb52fa3-font-size:16px;--e-global-typography-10e267f-font-size:80px;--e-global-typography-a46d01d-font-size:80px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-20 h1{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-20 h2{font-size:var( --e-global-typography-72002a0-font-size );line-height:var( --e-global-typography-72002a0-line-height );}.elementor-kit-20 h3{font-size:var( --e-global-typography-f92df44-font-size );line-height:var( --e-global-typography-f92df44-line-height );}.elementor-kit-20 h4{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-20 h5{font-size:var( --e-global-typography-3e9bd11-font-size );line-height:var( --e-global-typography-3e9bd11-line-height );}.elementor-kit-20 h6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-20 button,.elementor-kit-20 input[type="button"],.elementor-kit-20 input[type="submit"],.elementor-kit-20 .elementor-button{font-size:var( --e-global-typography-d309300-font-size );line-height:var( --e-global-typography-d309300-line-height );}.elementor-kit-20 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-20 input:not([type="button"]):not([type="submit"]),.elementor-kit-20 textarea,.elementor-kit-20 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ==========================================================================
   TIL · Efectos de interfaz — añadido 10-09-2026
   Sobrio, sin JS, sin coste en Core Web Vitals.
   Todo se desactiva solo si el visitante pide menos animación.
   ========================================================================== */

/* --- 1. Transiciones. Nunca "all": solo las propiedades que compositan --- */
a, .elementor-button, .elementor-widget-image img, .elementor-icon,
.til-card, .til-card img {
  transition-property: color, background-color, border-color, box-shadow,
                       transform, opacity, background-size;
  transition-duration: .22s;
  transition-timing-function: cubic-bezier(.22,.61,.36,1);
}

/* --- 2. Botones: color de marca + elevación mínima --- */
.elementor-button:hover,
.elementor-button:focus-visible {
  background-color: var(--e-global-color-b1e4f01); /* Azul TIL hover */
  transform: translateY(-1px);
  box-shadow: 0 6px 18px -6px rgba(31,84,191,.45);
}
.elementor-button:active { transform: translateY(0); box-shadow: none; }

/* --- 3. Enlaces de texto: subrayado que crece desde la izquierda --- */
.elementor-widget-text-editor a:not(.elementor-button),
.elementor-widget-theme-post-content a:not(.elementor-button) {
  background-image: linear-gradient(var(--e-global-color-secondary),
                                    var(--e-global-color-secondary));
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 0% 1px;
  text-decoration: none;
  padding-bottom: 1px;
}
.elementor-widget-text-editor a:not(.elementor-button):hover,
.elementor-widget-theme-post-content a:not(.elementor-button):hover {
  background-size: 100% 1px;
}

/* --- 4. Tarjetas (áreas de experiencia, artículos de Factoría Futura) ---
   Aplicar la clase til-card al contenedor. La imagen hace un zoom mínimo. */
.til-card { overflow: hidden; }
.til-card:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -22px rgba(14,27,51,.38); }
.til-card img { will-change: transform; }
.til-card:hover img { transform: scale(1.035); }

/* --- 5. Aparición al hacer scroll, nativa (sin JS, sin librería) ---
   Clase til-reveal. Donde el navegador no la soporte, el contenido
   simplemente se ve desde el principio: nunca deja nada invisible. */
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .til-reveal {
      animation: til-fade-up linear both;
      animation-timeline: view();
      animation-range: entry 10% cover 28%;
    }
  }
}
@keyframes til-fade-up {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: none; }
}

/* --- 6. Foco visible. Accesibilidad real, la que el widget no da --- */
a:focus-visible, button:focus-visible, .elementor-button:focus-visible,
input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 2px solid var(--e-global-color-secondary);
  outline-offset: 3px;
  border-radius: 2px;
}

/* --- 7. Anclas por debajo de la cabecera fija --- */
html { scroll-behavior: smooth; }
:target { scroll-margin-top: 96px; }

/* --- 8. Selección de texto con el color de marca --- */
::selection { background: var(--e-global-color-ce1e57e); color: var(--e-global-color-primary); }

/* --- 9. Degradado de marca. Clase til-gradient para el hero --- */
.til-gradient {
  background-image: linear-gradient(135deg, #ABD4E6 0%, #A0BBE7 55%, #9389CC 100%);
}

/* --- 10. Respeto por prefers-reduced-motion: se apaga todo --- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  .til-card:hover, .elementor-button:hover { transform: none; }
}/* End custom CSS */