.elementor-404 .elementor-element.elementor-element-2107b80{--display:flex;--min-height:60vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-404 .elementor-element.elementor-element-70e65df{--display:flex;--justify-content:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-404 .elementor-element.elementor-element-eb5d80b{text-align:center;}.elementor-404 .elementor-element.elementor-element-eb5d80b .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:80px;font-weight:800;line-height:1.1em;color:#202020;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-404 .elementor-element.elementor-element-f9cf910{width:var( --container-widget-width, 75% );max-width:75%;--container-widget-width:75%;--container-widget-flex-grow:0;text-align:center;font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:500;color:#202020;}.elementor-404 .elementor-element.elementor-element-f9cf910.elementor-element{--align-self:center;}.elementor-404 .elementor-element.elementor-element-f9cf910 p{margin-block-end:0px;}.elementor-404 .elementor-element.elementor-element-7e26df2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-404 .elementor-element.elementor-element-ea4bbb0 .elementor-button{background-color:transparent;font-family:"Montserrat", Sans-serif;font-weight:500;fill:#FFFFFF;color:#FFFFFF;background-image:linear-gradient(280deg, #E88019 0%, #782178 100%);}.elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button{background-color:#FFFFFF;font-family:"Montserrat", Sans-serif;font-weight:500;fill:#202020;color:#202020;transition-duration:0.3s;border-style:solid;border-width:1px 1px 1px 1px;border-color:#202020;}.elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button:hover, .elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button:focus{background-color:transparent;color:#FFFFFF;background-image:linear-gradient(280deg, #782178 0%, #E88019 100%);border-color:#E88019;}.elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button:hover svg, .elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button:focus svg{fill:#FFFFFF;}.elementor-404 .elementor-element.elementor-element-05fe9dc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:10px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-404 .elementor-element.elementor-element-554b9df{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:10px;--padding-bottom:10px;--padding-left:50px;--padding-right:50px;}.elementor-404 .elementor-element.elementor-element-4b8df1a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-404 .elementor-element.elementor-element-01487c0{padding:10px 10px 10px 10px;text-align:start;}.elementor-404 .elementor-element.elementor-element-01487c0 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:35px;font-weight:800;line-height:1.1em;color:#202020;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-404 .elementor-element.elementor-element-21f328d{--divider-border-style:solid;--divider-color:#202020;--divider-border-width:2px;width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;}.elementor-404 .elementor-element.elementor-element-21f328d.elementor-element{--align-self:center;}.elementor-404 .elementor-element.elementor-element-21f328d .elementor-divider-separator{width:100%;}.elementor-404 .elementor-element.elementor-element-21f328d .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-404 .elementor-element.elementor-element-c1da234{--display:flex;}.elementor-404 .elementor-element.elementor-element-30d7bd1{--swiper-slides-to-display:3;--swiper-offset-size:80px;--swiper-slides-gap:10px;--arrow-prev-left-align:0%;--arrow-prev-translate-x:0px;--arrow-prev-left-position:0px;--arrow-prev-top-align:50%;--arrow-prev-translate-y:-50%;--arrow-prev-top-position:0px;--arrow-next-right-align:0%;--arrow-next-translate-x:0%;--arrow-next-right-position:0px;--arrow-next-top-align:50%;--arrow-next-translate-y:-50%;--arrow-next-top-position:0px;}.elementor-404 .elementor-element.elementor-element-30d7bd1 .swiper-slide > .elementor-element{height:100%;}.elementor-404 .elementor-element.elementor-element-c44e28b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-404 .elementor-element.elementor-element-5bf2243{--display:flex;--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-404 .elementor-element.elementor-element-d7369c7{text-align:center;}.elementor-404 .elementor-element.elementor-element-d7369c7 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:55px;font-weight:800;line-height:1.1em;color:#202020;}.elementor-404 .elementor-element.elementor-element-8eb8b80{text-align:center;font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:400;color:#202020;}.elementor-404 .elementor-element.elementor-element-8eb8b80 p{margin-block-end:0px;}.elementor-404 .elementor-element.elementor-element-8955036{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-404 .elementor-element.elementor-element-04e64e0 img{width:100%;border-radius:20px 20px 20px 20px;}.elementor-404 .elementor-element.elementor-element-b03cf4e img{width:100%;border-radius:20px 20px 20px 20px;}.elementor-404 .elementor-element.elementor-element-5893470 img{width:100%;border-radius:20px 20px 20px 20px;}.elementor-404 .elementor-element.elementor-element-9f563e0 img{width:100%;border-radius:20px 20px 20px 20px;}.elementor-404 .elementor-element.elementor-element-bf428f1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-404 .elementor-element.elementor-element-bd07689{--display:flex;}.elementor-404 .elementor-element.elementor-element-f79f351{--display:flex;--z-index:0;}.elementor-404 .elementor-element.elementor-element-2ea761f .elementor-button{background-color:#FFFFFF;font-family:"Montserrat", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;fill:#E88019;color:#E88019;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.14);border-radius:50px 50px 50px 50px;padding:12px 18px 12px 18px;}.elementor-404 .elementor-element.elementor-element-e680c55{text-align:start;}.elementor-404 .elementor-element.elementor-element-e680c55 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:45px;font-weight:800;line-height:1.1em;color:#202020;}.elementor-404 .elementor-element.elementor-element-3f80330{width:var( --container-widget-width, 90% );max-width:90%;--container-widget-width:90%;--container-widget-flex-grow:0;text-align:justify;font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:400;color:#202020;}.elementor-404 .elementor-element.elementor-element-3f80330 p{margin-block-end:0px;}.elementor-404 .elementor-element.elementor-element-c87b921{--display:flex;}@media(max-width:1024px){.elementor-404 .elementor-element.elementor-element-30d7bd1{--swiper-slides-to-display:2;}}@media(min-width:768px){.elementor-404 .elementor-element.elementor-element-2107b80{--content-width:1280px;}.elementor-404 .elementor-element.elementor-element-c44e28b{--content-width:1280px;}.elementor-404 .elementor-element.elementor-element-5bf2243{--width:100%;}.elementor-404 .elementor-element.elementor-element-8955036{--width:100%;}.elementor-404 .elementor-element.elementor-element-bf428f1{--content-width:1280px;}.elementor-404 .elementor-element.elementor-element-f79f351{--width:100%;}}@media(max-width:767px){.elementor-404 .elementor-element.elementor-element-01487c0{padding:0px 0px 0px 0px;text-align:start;}.elementor-404 .elementor-element.elementor-element-30d7bd1{--swiper-slides-to-display:1;}}/* Start custom CSS for heading, class: .elementor-element-eb5d80b *//* =========================================
   HERO H1 - TIPOGRAFÍA FLUIDA Y DEGRADADO
   ========================================= */

/* 1. Estructura principal del H1 */
.elementor-404 .elementor-element.elementor-element-eb5d80b {
    /* Fluid Typography: 40px en móvil, escala según el viewport, tope de 72px en monitor grande */
    font-size: clamp(2.5rem, 5vw + 1rem, 4.5rem);
    font-weight: 800; /* Extrabold para máximo impacto */
    line-height: 1.1; /* Interlineado muy cerrado, vital en títulos masivos */
    letter-spacing: -0.02em; /* Tracking negativo ligero para estética premium */
    color: #1E2229; /* Nuestro brand-dark por defecto */
}

/* 2. El recorte del texto degradado (Target al <span>) */
.elementor-404 .elementor-element.elementor-element-eb5d80b span {
    /* Degradado del Naranja corporativo al Magenta */
    background: linear-gradient(to right, #E57200, #9B2242);
    
    /* Magia de recorte nativa de CSS3 */
    -webkit-background-clip: text;
    background-clip: text;
    
    /* Hacemos transparente el relleno del texto para ver el fondo */
    -webkit-text-fill-color: transparent;
    color: transparent;
    
    /* Previene bugs de renderizado del degradado si el texto salta de línea */
    display: inline-block; 
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-ea4bbb0 *//* =========================================
   BOTÓN: EFECTO LIFT (ELEVACIÓN EN HOVER)
   ========================================= */

/* 1. Preparamos el botón para una transición fluida */
.elementor-404 .elementor-element.elementor-element-ea4bbb0 .elementor-button {
    /* Usamos cubic-bezier para que la animación empiece rápido y termine suave */
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform, box-shadow; /* Optimización de GPU */
}

/* 2. El estado al pasar el ratón */
.elementor-404 .elementor-element.elementor-element-ea4bbb0 .elementor-button:hover {
    /* Subimos el botón 5px exactos */
    transform: translateY(-5px);
    
}

/* 3. El estado de "clic" (Active) */
.elementor-404 .elementor-element.elementor-element-ea4bbb0 .elementor-button:active {
    /* Cuando hacen clic, el botón se hunde ligeramente (baja a -2px en vez de -5px) */
    transform: translateY(-2px);
    box-shadow: 0 5px 10px -3px rgba(229, 114, 0, 0.4);
}

/* 4. Respeto a la accesibilidad */
@media (prefers-reduced-motion: reduce) {
    .elementor-404 .elementor-element.elementor-element-ea4bbb0 .elementor-button {
        transition: none;
    }
    .elementor-404 .elementor-element.elementor-element-ea4bbb0 .elementor-button:hover,
    .elementor-404 .elementor-element.elementor-element-ea4bbb0 .elementor-button:active {
        transform: none;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-5fc25c5 *//* =========================================
   BOTÓN: EFECTO LIFT (ELEVACIÓN EN HOVER)
   ========================================= */

/* 1. Preparamos el botón para una transición fluida */
.elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button {
    /* Usamos cubic-bezier para que la animación empiece rápido y termine suave */
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform, box-shadow; /* Optimización de GPU */
}

/* 2. El estado al pasar el ratón */
.elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button:hover {
    /* Subimos el botón 5px exactos */
    transform: translateY(-5px);
    
}

/* 3. El estado de "clic" (Active) */
.elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button:active {
    /* Cuando hacen clic, el botón se hunde ligeramente (baja a -2px en vez de -5px) */
    transform: translateY(-2px);
    box-shadow: 0 5px 10px -3px rgba(229, 114, 0, 0.4);
}

/* 4. Respeto a la accesibilidad */
@media (prefers-reduced-motion: reduce) {
    .elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button {
        transition: none;
    }
    .elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button:hover,
    .elementor-404 .elementor-element.elementor-element-5fc25c5 .elementor-button:active {
        transform: none;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-01487c0 *//* =========================================
   HERO H1 - TIPOGRAFÍA FLUIDA Y DEGRADADO
   ========================================= */

/* 1. Estructura principal del H1 */
.elementor-404 .elementor-element.elementor-element-01487c0 {
    /* Fluid Typography: 40px en móvil, escala según el viewport, tope de 72px en monitor grande */
    font-size: clamp(2.5rem, 5vw + 1rem, 4.5rem);
    font-weight: 800; /* Extrabold para máximo impacto */
    line-height: 1.1; /* Interlineado muy cerrado, vital en títulos masivos */
    letter-spacing: -0.02em; /* Tracking negativo ligero para estética premium */
    color: #1E2229; /* Nuestro brand-dark por defecto */
}

/* 2. El recorte del texto degradado (Target al <span>) */
.elementor-404 .elementor-element.elementor-element-01487c0 span {
    /* Degradado del Naranja corporativo al Magenta */
    background: linear-gradient(to right, #E57200, #9B2242);
    
    /* Magia de recorte nativa de CSS3 */
    -webkit-background-clip: text;
    background-clip: text;
    
    /* Hacemos transparente el relleno del texto para ver el fondo */
    -webkit-text-fill-color: transparent;
    color: transparent;
    
    /* Previene bugs de renderizado del degradado si el texto salta de línea */
    display: inline-block; 
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-d7369c7 *//* =========================================
   HERO H1 - TIPOGRAFÍA FLUIDA Y DEGRADADO
   ========================================= */

/* 1. Estructura principal del H1 */
.elementor-404 .elementor-element.elementor-element-d7369c7 {
    /* Fluid Typography: 40px en móvil, escala según el viewport, tope de 72px en monitor grande */
    font-size: clamp(2.5rem, 5vw + 1rem, 4.5rem);
    font-weight: 800; /* Extrabold para máximo impacto */
    line-height: 1.1; /* Interlineado muy cerrado, vital en títulos masivos */
    letter-spacing: -0.02em; /* Tracking negativo ligero para estética premium */
    color: #1E2229; /* Nuestro brand-dark por defecto */
}

/* 2. El recorte del texto degradado (Target al <span>) */
.elementor-404 .elementor-element.elementor-element-d7369c7 span {
    /* Degradado del Naranja corporativo al Magenta */
    background: linear-gradient(to right, #E57200, #9B2242);
    
    /* Magia de recorte nativa de CSS3 */
    -webkit-background-clip: text;
    background-clip: text;
    
    /* Hacemos transparente el relleno del texto para ver el fondo */
    -webkit-text-fill-color: transparent;
    color: transparent;
    
    /* Previene bugs de renderizado del degradado si el texto salta de línea */
    display: inline-block; 
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e680c55 *//* =========================================
   HERO H1 - TIPOGRAFÍA FLUIDA Y DEGRADADO
   ========================================= */

/* 1. Estructura principal del H1 */
.elementor-404 .elementor-element.elementor-element-e680c55 {
    /* Fluid Typography: 40px en móvil, escala según el viewport, tope de 72px en monitor grande */
    font-size: clamp(2.5rem, 5vw + 1rem, 4.5rem);
    font-weight: 800; /* Extrabold para máximo impacto */
    line-height: 1.1; /* Interlineado muy cerrado, vital en títulos masivos */
    letter-spacing: -0.02em; /* Tracking negativo ligero para estética premium */
    color: #1E2229; /* Nuestro brand-dark por defecto */
}

/* 2. El recorte del texto degradado (Target al <span>) */
.elementor-404 .elementor-element.elementor-element-e680c55 span {
    /* Degradado del Naranja corporativo al Magenta */
    background: linear-gradient(to right, #E57200, #9B2242);
    
    /* Magia de recorte nativa de CSS3 */
    -webkit-background-clip: text;
    background-clip: text;
    
    /* Hacemos transparente el relleno del texto para ver el fondo */
    -webkit-text-fill-color: transparent;
    color: transparent;
    
    /* Previene bugs de renderizado del degradado si el texto salta de línea */
    display: inline-block; 
}/* End custom CSS */