.elementor-400 .elementor-element.elementor-element-2e2705d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:10%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-400 .elementor-element.elementor-element-2e2705d.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-400 .elementor-element.elementor-element-f8b6c46{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-400 .elementor-element.elementor-element-f8b6c46.elementor-element{--align-self:center;}.elementor-400 .elementor-element.elementor-element-2b9f533{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:17px;--margin-left:0px;--margin-right:0px;}.elementor-400 .elementor-element.elementor-element-bb3bb7b{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-400 .elementor-element.elementor-element-bb3bb7b.e-con{--flex-grow:0;--flex-shrink:0;}.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-400 .elementor-element.elementor-element-cc58feb{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:center;font-family:"Teachers", Sans-serif;font-size:27px;line-height:1.1em;color:#E94847;}.elementor-400 .elementor-element.elementor-element-cc58feb.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-400 .elementor-element.elementor-element-32e9280{--display:flex;--min-height:0px;--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;}@media(min-width:768px){.elementor-400 .elementor-element.elementor-element-2e2705d{--width:100%;}.elementor-400 .elementor-element.elementor-element-2b9f533{--content-width:100%;}.elementor-400 .elementor-element.elementor-element-bb3bb7b{--width:100%;}.elementor-400 .elementor-element.elementor-element-32e9280{--content-width:100%;}}/* Start custom CSS for container, class: .elementor-element-2b9f533 */.elementor-400 .elementor-element.elementor-element-2b9f533 {
    /* NO ponemos opacity: 0 aquí para evitar conflictos. */
    /* Usamos 'both' para que la animación controle la visibilidad antes y después */
    animation: enfoqueProyector 2.5s ease-out both;
    
    /* Optimización */
    will-change: opacity, filter, transform;
}

@keyframes enfoqueProyector {
    /* 0% - ESTADO INICIAL (Antes de empezar) */
    0% {
        opacity: 0;
        filter: blur(12px);
        transform: scale(0.98);
    }
    
    /* 60% - Primer enfoque */
    60% {
        opacity: 1;
        filter: blur(0px);
        transform: scale(1);
    }
    
    /* 75% - El pequeño desenfoque "cine" */
    75% {
        opacity: 0.9;
        filter: blur(2px);
    }
    
    /* 100% - ESTADO FINAL (Se queda así para siempre) */
    100% {
        opacity: 1 !important; /* El !important asegura que no desaparezca */
        filter: blur(0px);
        transform: scale(1);
    }
}/* End custom CSS */