.elementor-4707 .elementor-element.elementor-element-3525fc1{--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;--overflow:auto;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-4707 .elementor-element.elementor-element-5544dac{--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;--align-items:center;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-4707 .elementor-element.elementor-element-d7cc4cd .elementor-icon-wrapper{text-align:center;}.elementor-4707 .elementor-element.elementor-element-d7cc4cd.elementor-view-stacked .elementor-icon{background-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-d7cc4cd.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-d7cc4cd.elementor-view-default .elementor-icon{color:#1A1A1A;border-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-d7cc4cd.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-d7cc4cd.elementor-view-default .elementor-icon svg{fill:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-d7cc4cd .elementor-icon{font-size:14px;}.elementor-4707 .elementor-element.elementor-element-d7cc4cd .elementor-icon svg{height:14px;}.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-4707 .elementor-element.elementor-element-675ea81 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-675ea81{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4707 .elementor-element.elementor-element-db2990d{--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;--align-items:center;}.elementor-4707 .elementor-element.elementor-element-01de27d .elementor-icon-wrapper{text-align:center;}.elementor-4707 .elementor-element.elementor-element-01de27d.elementor-view-stacked .elementor-icon{background-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-01de27d.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-01de27d.elementor-view-default .elementor-icon{color:#1A1A1A;border-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-01de27d.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-01de27d.elementor-view-default .elementor-icon svg{fill:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-01de27d .elementor-icon{font-size:14px;}.elementor-4707 .elementor-element.elementor-element-01de27d .elementor-icon svg{height:14px;}.elementor-4707 .elementor-element.elementor-element-9bea250 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-9bea250{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4707 .elementor-element.elementor-element-1b3eb33 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:400;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-1b3eb33{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 047px;}.elementor-4707 .elementor-element.elementor-element-e8ad5d9 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:400;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-e8ad5d9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 47px;}.elementor-4707 .elementor-element.elementor-element-9140ea0 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:400;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-9140ea0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 47px;}.elementor-4707 .elementor-element.elementor-element-34685fa{--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;--align-items:center;}.elementor-4707 .elementor-element.elementor-element-2563c86 .elementor-icon-wrapper{text-align:center;}.elementor-4707 .elementor-element.elementor-element-2563c86.elementor-view-stacked .elementor-icon{background-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-2563c86.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-2563c86.elementor-view-default .elementor-icon{color:#1A1A1A;border-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-2563c86.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-2563c86.elementor-view-default .elementor-icon svg{fill:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-2563c86 .elementor-icon{font-size:14px;}.elementor-4707 .elementor-element.elementor-element-2563c86 .elementor-icon svg{height:14px;}.elementor-4707 .elementor-element.elementor-element-a872afc .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-a872afc{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4707 .elementor-element.elementor-element-6e27c32{--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;--align-items:center;}.elementor-4707 .elementor-element.elementor-element-259653d .elementor-icon-wrapper{text-align:center;}.elementor-4707 .elementor-element.elementor-element-259653d.elementor-view-stacked .elementor-icon{background-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-259653d.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-259653d.elementor-view-default .elementor-icon{color:#1A1A1A;border-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-259653d.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-259653d.elementor-view-default .elementor-icon svg{fill:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-259653d .elementor-icon{font-size:14px;}.elementor-4707 .elementor-element.elementor-element-259653d .elementor-icon svg{height:14px;}.elementor-4707 .elementor-element.elementor-element-be059df .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-be059df{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4707 .elementor-element.elementor-element-4c3b881{--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;--align-items:center;}.elementor-4707 .elementor-element.elementor-element-516a0d5 .elementor-icon-wrapper{text-align:center;}.elementor-4707 .elementor-element.elementor-element-516a0d5.elementor-view-stacked .elementor-icon{background-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-516a0d5.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-516a0d5.elementor-view-default .elementor-icon{color:#1A1A1A;border-color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-516a0d5.elementor-view-framed .elementor-icon, .elementor-4707 .elementor-element.elementor-element-516a0d5.elementor-view-default .elementor-icon svg{fill:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-516a0d5 .elementor-icon{font-size:14px;}.elementor-4707 .elementor-element.elementor-element-516a0d5 .elementor-icon svg{height:14px;}.elementor-4707 .elementor-element.elementor-element-9156801 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-9156801{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4707 .elementor-element.elementor-element-bf517d5 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:500;text-transform:capitalize;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-bf517d5{margin:60px 0px calc(var(--kit-widget-spacing, 0px) + 010px) 0px;}.elementor-4707 .elementor-element.elementor-element-6b12bed .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:600;text-transform:uppercase;color:#1A1A1A;}.elementor-4707 .elementor-element.elementor-element-6b12bed{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 010px) 0px;}.elementor-4707 .elementor-element.elementor-element-45f93e8{--grid-template-columns:repeat(0, auto);text-align:left;--icon-size:21px;--grid-column-gap:5px;--grid-row-gap:0px;margin:-21px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-4707 .elementor-element.elementor-element-45f93e8 .elementor-social-icon{background-color:#02010100;}.elementor-4707 .elementor-element.elementor-element-45f93e8 .elementor-social-icon i{color:#C5A059;}.elementor-4707 .elementor-element.elementor-element-45f93e8 .elementor-social-icon svg{fill:#C5A059;}#elementor-popup-modal-4707 .dialog-message{width:40vw;height:100vh;align-items:flex-start;}#elementor-popup-modal-4707{justify-content:flex-end;align-items:flex-start;pointer-events:all;background-color:#0000004D;}#elementor-popup-modal-4707 .dialog-close-button{display:flex;font-size:18px;}#elementor-popup-modal-4707 .dialog-widget-content{animation-duration:0.9s;background-color:#F2F0EB;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}body:not(.rtl) #elementor-popup-modal-4707 .dialog-close-button{right:10%;}body.rtl #elementor-popup-modal-4707 .dialog-close-button{left:10%;}#elementor-popup-modal-4707 .dialog-close-button i{color:#1A1A1A;}#elementor-popup-modal-4707 .dialog-close-button svg{fill:#1A1A1A;}@media(max-width:767px){.elementor-4707 .elementor-element.elementor-element-45f93e8{text-align:left;--grid-column-gap:20px;}}/* Start custom CSS for heading, class: .elementor-element-675ea81 *//* 1. CONFIGURACIÓN DEL ENLACE */
.elementor-4707 .elementor-element.elementor-element-675ea81 a {
    text-decoration: none !important;
    display: inline-block; /* La línea medirá lo que mide el texto */
    position: relative;
    color: #1A1A1A; /* Tu negro de marca */
    padding-bottom: 3px; /* Espacio elegante entre texto y línea */
}

/* 2. CREACIÓN DE LA LÍNEA (ESTADO INICIAL) */
.elementor-4707 .elementor-element.elementor-element-675ea81 a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0; /* Empieza en cero */
    height: 2px; /* Grosor base */
    background-color: #1A1A1A;
    
    /* --- TRUCO DE PRECISIÓN PARA QUE NO SE VEA NEGRITA --- */
    transform: scaleY(0.7); /* Adelgaza la línea a un nivel ultra fino */
    transform-origin: left;
    -webkit-font-smoothing: antialiased; /* Suaviza el borde en Mac/iPhone */
    
    /* Transición fluida y premium */
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* 3. EFECTO AL PASAR EL CURSOR (HOVER) */
.elementor-4707 .elementor-element.elementor-element-675ea81 a:hover::after {
    width: 100%; /* La línea crece al total del texto */
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9bea250 *//* 1. CONFIGURACIÓN DEL ENLACE */
.elementor-4707 .elementor-element.elementor-element-9bea250 a {
    text-decoration: none !important;
    display: inline-block; /* La línea medirá lo que mide el texto */
    position: relative;
    color: #1A1A1A; /* Tu negro de marca */
    padding-bottom: 3px; /* Espacio elegante entre texto y línea */
}

/* 2. CREACIÓN DE LA LÍNEA (ESTADO INICIAL) */
.elementor-4707 .elementor-element.elementor-element-9bea250 a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0; /* Empieza en cero */
    height: 2px; /* Grosor base */
    background-color: #1A1A1A;
    
    /* --- TRUCO DE PRECISIÓN PARA QUE NO SE VEA NEGRITA --- */
    transform: scaleY(0.7); /* Adelgaza la línea a un nivel ultra fino */
    transform-origin: left;
    -webkit-font-smoothing: antialiased; /* Suaviza el borde en Mac/iPhone */
    
    /* Transición fluida y premium */
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* 3. EFECTO AL PASAR EL CURSOR (HOVER) */
.elementor-4707 .elementor-element.elementor-element-9bea250 a:hover::after {
    width: 100%; /* La línea crece al total del texto */
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-1b3eb33 *//* --- CONFIGURACIÓN DEL ENLACE MAESTRO --- */
.elementor-4707 .elementor-element.elementor-element-1b3eb33 a {
    position: relative;
    text-decoration: none !important; /* Quitamos subrayado viejo */
    color: #1A1A1A; /* Aseguramos tu color de marca */
    display: inline-block; /* Para que la línea mida lo que el texto */
    overflow: hidden; /* ¡Clave! Esconde la línea cuando se sale del borde */
    padding-bottom: 2px; /* Un poco de aire para la línea */
}

/* --- ESTADO INICIAL DE LA LÍNEA (DE ENTRADA SUBRAYADO) --- */
.elementor-4707 .elementor-element.elementor-element-1b3eb33 a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; /* La línea cubre todo el texto inicialmente */
    height: 1px; /* Grosor refinado */
    background-color: #1A1A1A; /* Color de tu marca */
    transform: translateX(0%); /* Posición inicial: centrado */
}

/* --- EL ACTIVADOR: AL PASAR EL CURSOR (HOVER) --- */
.elementor-4707 .elementor-element.elementor-element-1b3eb33 a:hover::after {
    /* Asignamos la animación personalizada 'APLineRoll' */
    /* Duración de 0.7s para que se vea premium y calma */
    animation: APLineRoll 0.7s ease-in-out; 
}

/* --- DEFINICIÓN DE LA ANIMACIÓN 'APLineRoll' --- */
/* Esta es la magia que hace que la línea vaya y vuelva */
@keyframes APLineRoll {
    /* FASE 1: Salida hacia la derecha */
    /* La línea se desliza desde el centro hasta desaparecer por la derecha */
    0% {
        transform: translateX(0%);
    }
    49% {
        transform: translateX(100%);
        opacity: 1; /* Sigue siendo visible */
    }
    
    /* FASE DE RESETEO (INSTANTÁNEA E INVISIBLE) */
    /* La línea se apaga y teletransporta mágicamente a la izquierda del todo */
    50% {
        opacity: 0; /* Se apaga */
        transform: translateX(100%); /* Sigue a la derecha */
    }
    51% {
        opacity: 0; /* Sigue apagada */
        transform: translateX(-100%); /* Ya está a la izquierda del todo */
    }
    52% {
        opacity: 1; /* Se vuelve a encender */
        transform: translateX(-100%); /* Ready en la salida de la izquierda */
    }
    
    /* FASE 2: Reentrada desde la izquierda */
    /* La línea entra por la izquierda y se desliza hasta el centro */
    100% {
        transform: translateX(0%);
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-e8ad5d9 *//* --- CONFIGURACIÓN DEL ENLACE MAESTRO --- */
.elementor-4707 .elementor-element.elementor-element-e8ad5d9 a {
    position: relative;
    text-decoration: none !important; /* Quitamos subrayado viejo */
    color: #1A1A1A; /* Aseguramos tu color de marca */
    display: inline-block; /* Para que la línea mida lo que el texto */
    overflow: hidden; /* ¡Clave! Esconde la línea cuando se sale del borde */
    padding-bottom: 2px; /* Un poco de aire para la línea */
}

/* --- ESTADO INICIAL DE LA LÍNEA (DE ENTRADA SUBRAYADO) --- */
.elementor-4707 .elementor-element.elementor-element-e8ad5d9 a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; /* La línea cubre todo el texto inicialmente */
    height: 1px; /* Grosor refinado */
    background-color: #1A1A1A; /* Color de tu marca */
    transform: translateX(0%); /* Posición inicial: centrado */
}

/* --- EL ACTIVADOR: AL PASAR EL CURSOR (HOVER) --- */
.elementor-4707 .elementor-element.elementor-element-e8ad5d9 a:hover::after {
    /* Asignamos la animación personalizada 'APLineRoll' */
    /* Duración de 0.7s para que se vea premium y calma */
    animation: APLineRoll 0.7s ease-in-out; 
}

/* --- DEFINICIÓN DE LA ANIMACIÓN 'APLineRoll' --- */
/* Esta es la magia que hace que la línea vaya y vuelva */
@keyframes APLineRoll {
    /* FASE 1: Salida hacia la derecha */
    /* La línea se desliza desde el centro hasta desaparecer por la derecha */
    0% {
        transform: translateX(0%);
    }
    49% {
        transform: translateX(100%);
        opacity: 1; /* Sigue siendo visible */
    }
    
    /* FASE DE RESETEO (INSTANTÁNEA E INVISIBLE) */
    /* La línea se apaga y teletransporta mágicamente a la izquierda del todo */
    50% {
        opacity: 0; /* Se apaga */
        transform: translateX(100%); /* Sigue a la derecha */
    }
    51% {
        opacity: 0; /* Sigue apagada */
        transform: translateX(-100%); /* Ya está a la izquierda del todo */
    }
    52% {
        opacity: 1; /* Se vuelve a encender */
        transform: translateX(-100%); /* Ready en la salida de la izquierda */
    }
    
    /* FASE 2: Reentrada desde la izquierda */
    /* La línea entra por la izquierda y se desliza hasta el centro */
    100% {
        transform: translateX(0%);
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9140ea0 *//* --- CONFIGURACIÓN DEL ENLACE MAESTRO --- */
.elementor-4707 .elementor-element.elementor-element-9140ea0 a {
    position: relative;
    text-decoration: none !important; /* Quitamos subrayado viejo */
    color: #1A1A1A; /* Aseguramos tu color de marca */
    display: inline-block; /* Para que la línea mida lo que el texto */
    overflow: hidden; /* ¡Clave! Esconde la línea cuando se sale del borde */
    padding-bottom: 2px; /* Un poco de aire para la línea */
}

/* --- ESTADO INICIAL DE LA LÍNEA (DE ENTRADA SUBRAYADO) --- */
.elementor-4707 .elementor-element.elementor-element-9140ea0 a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; /* La línea cubre todo el texto inicialmente */
    height: 1px; /* Grosor refinado */
    background-color: #1A1A1A; /* Color de tu marca */
    transform: translateX(0%); /* Posición inicial: centrado */
}

/* --- EL ACTIVADOR: AL PASAR EL CURSOR (HOVER) --- */
.elementor-4707 .elementor-element.elementor-element-9140ea0 a:hover::after {
    /* Asignamos la animación personalizada 'APLineRoll' */
    /* Duración de 0.7s para que se vea premium y calma */
    animation: APLineRoll 0.7s ease-in-out; 
}

/* --- DEFINICIÓN DE LA ANIMACIÓN 'APLineRoll' --- */
/* Esta es la magia que hace que la línea vaya y vuelva */
@keyframes APLineRoll {
    /* FASE 1: Salida hacia la derecha */
    /* La línea se desliza desde el centro hasta desaparecer por la derecha */
    0% {
        transform: translateX(0%);
    }
    49% {
        transform: translateX(100%);
        opacity: 1; /* Sigue siendo visible */
    }
    
    /* FASE DE RESETEO (INSTANTÁNEA E INVISIBLE) */
    /* La línea se apaga y teletransporta mágicamente a la izquierda del todo */
    50% {
        opacity: 0; /* Se apaga */
        transform: translateX(100%); /* Sigue a la derecha */
    }
    51% {
        opacity: 0; /* Sigue apagada */
        transform: translateX(-100%); /* Ya está a la izquierda del todo */
    }
    52% {
        opacity: 1; /* Se vuelve a encender */
        transform: translateX(-100%); /* Ready en la salida de la izquierda */
    }
    
    /* FASE 2: Reentrada desde la izquierda */
    /* La línea entra por la izquierda y se desliza hasta el centro */
    100% {
        transform: translateX(0%);
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-a872afc *//* 1. CONFIGURACIÓN DEL ENLACE */
.elementor-4707 .elementor-element.elementor-element-a872afc a {
    text-decoration: none !important;
    display: inline-block; /* La línea medirá lo que mide el texto */
    position: relative;
    color: #1A1A1A; /* Tu negro de marca */
    padding-bottom: 3px; /* Espacio elegante entre texto y línea */
}

/* 2. CREACIÓN DE LA LÍNEA (ESTADO INICIAL) */
.elementor-4707 .elementor-element.elementor-element-a872afc a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0; /* Empieza en cero */
    height: 2px; /* Grosor base */
    background-color: #1A1A1A;
    
    /* --- TRUCO DE PRECISIÓN PARA QUE NO SE VEA NEGRITA --- */
    transform: scaleY(0.7); /* Adelgaza la línea a un nivel ultra fino */
    transform-origin: left;
    -webkit-font-smoothing: antialiased; /* Suaviza el borde en Mac/iPhone */
    
    /* Transición fluida y premium */
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* 3. EFECTO AL PASAR EL CURSOR (HOVER) */
.elementor-4707 .elementor-element.elementor-element-a872afc a:hover::after {
    width: 100%; /* La línea crece al total del texto */
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-be059df *//* 1. CONFIGURACIÓN DEL ENLACE */
.elementor-4707 .elementor-element.elementor-element-be059df a {
    text-decoration: none !important;
    display: inline-block; /* La línea medirá lo que mide el texto */
    position: relative;
    color: #1A1A1A; /* Tu negro de marca */
    padding-bottom: 3px; /* Espacio elegante entre texto y línea */
}

/* 2. CREACIÓN DE LA LÍNEA (ESTADO INICIAL) */
.elementor-4707 .elementor-element.elementor-element-be059df a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0; /* Empieza en cero */
    height: 2px; /* Grosor base */
    background-color: #1A1A1A;
    
    /* --- TRUCO DE PRECISIÓN PARA QUE NO SE VEA NEGRITA --- */
    transform: scaleY(0.7); /* Adelgaza la línea a un nivel ultra fino */
    transform-origin: left;
    -webkit-font-smoothing: antialiased; /* Suaviza el borde en Mac/iPhone */
    
    /* Transición fluida y premium */
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* 3. EFECTO AL PASAR EL CURSOR (HOVER) */
.elementor-4707 .elementor-element.elementor-element-be059df a:hover::after {
    width: 100%; /* La línea crece al total del texto */
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9156801 *//* 1. CONFIGURACIÓN DEL ENLACE */
.elementor-4707 .elementor-element.elementor-element-9156801 a {
    text-decoration: none !important;
    display: inline-block; /* La línea medirá lo que mide el texto */
    position: relative;
    color: #1A1A1A; /* Tu negro de marca */
    padding-bottom: 3px; /* Espacio elegante entre texto y línea */
}

/* 2. CREACIÓN DE LA LÍNEA (ESTADO INICIAL) */
.elementor-4707 .elementor-element.elementor-element-9156801 a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0; /* Empieza en cero */
    height: 2px; /* Grosor base */
    background-color: #1A1A1A;
    
    /* --- TRUCO DE PRECISIÓN PARA QUE NO SE VEA NEGRITA --- */
    transform: scaleY(0.7); /* Adelgaza la línea a un nivel ultra fino */
    transform-origin: left;
    -webkit-font-smoothing: antialiased; /* Suaviza el borde en Mac/iPhone */
    
    /* Transición fluida y premium */
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* 3. EFECTO AL PASAR EL CURSOR (HOVER) */
.elementor-4707 .elementor-element.elementor-element-9156801 a:hover::after {
    width: 100%; /* La línea crece al total del texto */
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-bf517d5 *//* --- CONFIGURACIÓN DEL ENLACE MAESTRO --- */
.elementor-4707 .elementor-element.elementor-element-bf517d5 a {
    position: relative;
    text-decoration: none !important; /* Quitamos subrayado viejo */
    color: #1A1A1A; /* Aseguramos tu color de marca */
    display: inline-block; /* Para que la línea mida lo que el texto */
    overflow: hidden; /* ¡Clave! Esconde la línea cuando se sale del borde */
    padding-bottom: 2px; /* Un poco de aire para la línea */
}

/* --- ESTADO INICIAL DE LA LÍNEA (DE ENTRADA SUBRAYADO) --- */
.elementor-4707 .elementor-element.elementor-element-bf517d5 a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%; /* La línea cubre todo el texto inicialmente */
    height: 1px; /* Grosor refinado */
    background-color: #1A1A1A; /* Color de tu marca */
    transform: translateX(0%); /* Posición inicial: centrado */
}

/* --- EL ACTIVADOR: AL PASAR EL CURSOR (HOVER) --- */
.elementor-4707 .elementor-element.elementor-element-bf517d5 a:hover::after {
    /* Asignamos la animación personalizada 'APLineRoll' */
    /* Duración de 0.7s para que se vea premium y calma */
    animation: APLineRoll 0.7s ease-in-out; 
}

/* --- DEFINICIÓN DE LA ANIMACIÓN 'APLineRoll' --- */
/* Esta es la magia que hace que la línea vaya y vuelva */
@keyframes APLineRoll {
    /* FASE 1: Salida hacia la derecha */
    /* La línea se desliza desde el centro hasta desaparecer por la derecha */
    0% {
        transform: translateX(0%);
    }
    49% {
        transform: translateX(100%);
        opacity: 1; /* Sigue siendo visible */
    }
    
    /* FASE DE RESETEO (INSTANTÁNEA E INVISIBLE) */
    /* La línea se apaga y teletransporta mágicamente a la izquierda del todo */
    50% {
        opacity: 0; /* Se apaga */
        transform: translateX(100%); /* Sigue a la derecha */
    }
    51% {
        opacity: 0; /* Sigue apagada */
        transform: translateX(-100%); /* Ya está a la izquierda del todo */
    }
    52% {
        opacity: 1; /* Se vuelve a encender */
        transform: translateX(-100%); /* Ready en la salida de la izquierda */
    }
    
    /* FASE 2: Reentrada desde la izquierda */
    /* La línea entra por la izquierda y se desliza hasta el centro */
    100% {
        transform: translateX(0%);
    }
}/* End custom CSS */