.elementor-1706 .elementor-element.elementor-element-d278774{--display:flex;}.elementor-1706 .elementor-element.elementor-element-4c20d70{--display:flex;--margin-top:20px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;}/* Start custom CSS for html, class: .elementor-element-94cf781 *//* Contenedor Principal */
.lmb-flow-section {
    position: relative;
    padding: 40px 20px 60px 20px; /* Padding inferior extra para la flecha */
    background: transparent;
    max-width: 1200px;
    margin: 0 auto;
}

.lmb-flow-container {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* Título Grande e Impactante */
.lmb-flow-title {
    font-family: 'Playfair Display', serif; /* O tu fuente de encabezados */
    font-size: clamp(2.5rem, 5vw, 4rem); /* Tamaño dinámico (grande en PC, ajustado en móvil) */
    font-weight: 700;
    line-height: 1.1;
    color: #1a1a1a;
    margin: 0;
    z-index: 1;
}

/* Efecto INNOVADOR: Resaltador estilo "Marker" */
.lmb-marker {
    position: relative;
    display: inline-block;
    color: #1a1a1a; /* El texto sigue oscuro para contraste */
    z-index: 1;
}

.lmb-marker::after {
    content: '';
    position: absolute;
    left: -5px;
    bottom: 5px;
    width: 105%;
    height: 30%; /* Altura del subrayado grueso */
    background-color: #bdb700; /* Tu color corporativo */
    opacity: 0.6; /* Transparencia para efecto marcador */
    z-index: -1; /* Se pone detrás del texto */
    transform: skewX(-10deg); /* Inclinación para dinamismo */
    transition: height 0.3s ease;
}

/* Hover sutil en el título */
.lmb-flow-title:hover .lmb-marker::after {
    height: 60%; /* El marcador crece al pasar el ratón */
}

/* Texto Descriptivo */
.lmb-flow-text-wrapper {
    border-left: 3px solid #bdb700; /* Línea fina elegante a la izquierda */
    padding-left: 25px;
}

.lmb-flow-description {
    font-family: 'Montserrat', sans-serif; /* O tu fuente de cuerpo */
    font-size: 1.1rem;
    line-height: 1.8;
    color: #444;
    margin: 0;
    max-width: 700px;
}

.lmb-flow-description strong {
    color: #000;
    font-weight: 700;
}

/* FLECHA CONECTORA (La clave para unir con el widget de abajo) */
.lmb-arrow-connector {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    height: 40px;
    cursor: default;
}

.lmb-arrow-connector span {
    display: block;
    width: 20px;
    height: 20px;
    border-bottom: 3px solid #bdb700;
    border-right: 3px solid #bdb700;
    transform: rotate(45deg);
    margin: -10px;
    animation: lmb-animate-arrow 2s infinite;
}

.lmb-arrow-connector span:nth-child(2) {
    animation-delay: -0.2s; /* Efecto de onda */
}

/* Animación de la flecha */
@keyframes lmb-animate-arrow {
    0% {
        opacity: 0;
        transform: rotate(45deg) translate(-20px, -20px);
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: rotate(45deg) translate(20px, 20px);
    }
}

/* MEDIA QUERIES (Escritorio) */
@media (min-width: 992px) {
    .lmb-flow-container {
        flex-direction: row; /* Lado a lado en PC */
        align-items: center;
        justify-content: space-between;
    }

    .lmb-flow-title {
        width: 45%;
    }

    .lmb-flow-text-wrapper {
        width: 50%;
    }
    
    /* Alineamos la flecha a la derecha en PC para guiar hacia los iconos si están alineados */
    /* O la dejamos en el centro. Si prefieres centro, borra este bloque media query para la flecha */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ec1989f *//* --- CONFIGURACIÓN DEL ENTORNO --- */
.innovative-social-wrapper {
    display: flex;
    justify-content: center;
    padding: 60px 20px;
    background: #ffffff;
    box-shadow: inset 0 0 50px rgba(0,0,0,0.02);
}

.social-list {
    display: flex;
    gap: 40px; /* Ajustado ligeramente para dar espacio a las cajas grandes */
    list-style: none;
    padding: 0;
    margin: 0;
    flex-wrap: wrap;
    justify-content: center;
}

/* --- ESTILO BASE DEL PANEL --- */
.social-link {
    /* Variables por defecto */
    --brand-color: #bdb700; 
    --brand-shadow: rgba(189, 183, 0, 0.5);
    
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 190px; /* Ligeramente más ancho para que quepa el handle largo */
    height: 190px;
    background: linear-gradient(145deg, #ffffff, #f0f0f0);
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 28px;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    overflow: hidden;
    z-index: 1;
    box-shadow: 0 15px 35px rgba(0,0,0,0.05);
    text-align: center;
}

/* --- VARIABLES DE MARCA --- */
.brand-linkedin { --brand-color: #0077b5; --brand-shadow: rgba(0, 119, 181, 0.6); }
.brand-facebook { --brand-color: #1877f2; --brand-shadow: rgba(24, 119, 242, 0.6); }
.brand-instagram { --brand-color: #d62976; --brand-shadow: rgba(214, 41, 118, 0.6); }
.brand-tiktok { 
    --brand-color: #000000; 
    --brand-shadow: rgba(0, 0, 0, 0.4);
    --tiktok-cyan: #00f2ea;
    --tiktok-pink: #ff0050;
}

/* --- ELEMENTOS INTERNOS --- */

/* Borde Animado */
.social-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 28px;
    background: linear-gradient(45deg, var(--brand-color), #ffffff, var(--brand-color));
    background-size: 200% 200%;
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: -1;
    animation: lmb-border-flow 2s linear infinite;
}

/* Fondo tapa */
.social-link::after {
    content: '';
    position: absolute;
    inset: 2px;
    background: #ffffff;
    border-radius: 26px;
    z-index: 0;
    transition: background 0.3s ease;
}

/* El Icono */
.social-link i {
    font-size: 60px; /* Ajustado un pelín para dejar espacio al texto */
    color: #b0b0b0;
    z-index: 2;
    margin-bottom: 15px;
    transition: all 0.4s ease;
}

/* Grupo de Texto (Nombre + Handle) */
.text-group {
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 2;
}

/* El Nombre de la Red */
.social-name {
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: #888; /* Gris medio */
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.4s ease;
    line-height: 1.2;
}

/* EL NUEVO HANDLE (@usuario) */
.social-handle {
    font-family: 'Roboto', sans-serif; /* Fuente más técnica para el handle */
    font-size: 0.75rem; /* Más pequeño */
    font-weight: 400;
    color: #ccc; /* Gris muy suave inicialmente */
    margin-top: 5px;
    transition: all 0.4s ease;
    white-space: nowrap; /* Evita que se parta en dos líneas */
    opacity: 0.8;
}

/* Ajuste específico para handles muy largos (como FB) */
.brand-facebook .social-handle {
    font-size: 0.65rem; /* Un poco más pequeño para que quepa */
}

/* --- HOVER --- */

.social-link:hover {
    transform: translateY(-15px) scale(1.05);
    box-shadow: 0 25px 50px var(--brand-shadow);
}

.social-link:hover::before { opacity: 1; }

/* Colorear icono */
.social-link:hover i {
    color: var(--brand-color);
    text-shadow: 0 0 20px var(--brand-shadow);
    transform: scale(1.1);
}

/* Colorear Textos */
.social-link:hover .social-name {
    color: var(--brand-color);
    color: #333; /* El nombre principal se oscurece para leerse bien */
}

.social-link:hover .social-handle {
    color: var(--brand-color); /* El handle se ilumina con el color de marca */
    opacity: 1;
}

/* --- INSTAGRAM SPECIAL --- */
.brand-instagram:hover i {
    background: -webkit-linear-gradient(45deg, #f09433, #bc1888);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none;
    filter: drop-shadow(0 0 5px rgba(220, 39, 67, 0.5));
}
.brand-instagram:hover .social-handle {
    /* Gradiente también en el handle de instagram */
    background: -webkit-linear-gradient(45deg, #f09433, #bc1888);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* --- TIKTOK SPECIAL --- */
.brand-tiktok:hover i {
    color: #000000;
    text-shadow: 3px 3px 0px var(--tiktok-cyan), -3px -3px 0px var(--tiktok-pink);
    animation: tiktok-shake 0.4s infinite;
}
.brand-tiktok:hover .social-handle {
    color: #000;
    text-shadow: 1px 1px 0 rgba(0, 242, 234, 0.5);
}

/* ANIMACIONES */
@keyframes lmb-border-flow {
    0% { background-position: 0% 50%; }
    100% { background-position: 100% 50%; }
}
@keyframes tiktok-shake {
    0% { transform: translate(0, 0) scale(1.1); }
    25% { transform: translate(1px, 1px) scale(1.1); }
    50% { transform: translate(-1px, -1px) scale(1.1); }
    75% { transform: translate(1px, -1px) scale(1.1); }
    100% { transform: translate(0, 0) scale(1.1); }
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .social-link { width: 140px; height: 140px; }
    .social-link i { font-size: 45px; margin-bottom: 10px; }
    .social-name { font-size: 0.8rem; }
    .social-handle { font-size: 0.6rem; display: none; /* Ocultamos handle en móvil si es muy pequeño, o lo dejamos */ }
    /* Si quieres ver el handle en móvil, borra la línea de display: none y usa font-size: 0.55rem */
    .social-handle { display: block; font-size: 0.55rem; } 
}/* End custom CSS */