*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    font-family:Arial, Helvetica, sans-serif;
    background:#070d1b;
}
/*======================================
                HEADER
======================================*/

.header{
    width:100%;
    height:90px;
    padding:0 6%;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    position:absolute;
    top:0;
    left:0;
    z-index:1000;

    background:rgba(7, 13, 27, 0.35);
    border-bottom:1px solid rgba(255,255,255,0.08);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}

/* LOGO */

.logo{
    display:flex;
    align-items:center;
    flex-shrink:0;
}

.logo img{
    height:60px;
    width:auto;
}

/* MENÚ */

.menu{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:30px;
}

.menu a{
    color:#ffffff;
    font-size:15px;
    font-weight:500;
    text-decoration:none;
    white-space:nowrap;
    position:relative;
    transition:color 0.3s ease;
}

.menu a::after{
    content:"";
    width:0;
    height:2px;

    position:absolute;
    left:0;
    bottom:-8px;

    background:#25c7f4;
    transition:width 0.3s ease;
}

.menu a:hover{
    color:#25c7f4;
}

.menu a:hover::after{
    width:100%;
}

/* BOTÓN DEL HEADER */

.header-btn{
    min-height:46px;
    padding:0 24px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#ffffff;
    font-size:14px;
    font-weight:700;
    text-decoration:none;
    white-space:nowrap;

    background:linear-gradient(135deg, #2563eb, #06b6d4);
    border:1px solid rgba(255,255,255,0.15);
    border-radius:10px;

    box-shadow:0 10px 30px rgba(6,182,212,0.20);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.header-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 35px rgba(6,182,212,0.35);
}

/* BOTÓN HAMBURGUESA */

.menu-toggle{
    width:42px;
    height:42px;

    display:none;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;

    background:transparent;
    border:1px solid rgba(255,255,255,0.25);
    border-radius:8px;
    cursor:pointer;
}

.menu-toggle span{
    width:22px;
    height:2px;
    display:block;
    background:#ffffff;
    border-radius:10px;
}
/*======================================
                 HERO
======================================

.hero{
    width:100%;
    min-height:100vh;
    padding:150px 8% 80px;

    display:grid;
    grid-template-columns:1.05fr 0.95fr;
    align-items:center;
    gap:70px;

    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 75% 40%,
            rgba(6, 182, 212, 0.16),
            transparent 34%
        ),
        radial-gradient(
            circle at 25% 70%,
            rgba(37, 99, 235, 0.15),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #050b18 0%,
            #07101f 55%,
            #081426 100%
        );
}

/* Efecto decorativo sutil 

.hero::before{
    content:"";
    width:500px;
    height:500px;

    position:absolute;
    top:-190px;
    right:-150px;

    border-radius:50%;
    background:rgba(6, 182, 212, 0.08);
    filter:blur(30px);
    pointer-events:none;
}

.hero::after{
    content:"";
    width:350px;
    height:350px;

    position:absolute;
    bottom:-160px;
    left:-100px;

    border-radius:50%;
    background:rgba(37, 99, 235, 0.10);
    filter:blur(40px);
    pointer-events:none;
}

/* CONTENIDO 

.hero-contenido{
    max-width:720px;
    position:relative;
    z-index:2;
}

.hero-contenido > span{
    display:inline-block;
    margin-bottom:22px;
    padding:9px 16px;

    color:#67e8f9;
    font-size:13px;
    font-weight:700;
    letter-spacing:2.2px;
    text-transform:uppercase;

    background:rgba(6, 182, 212, 0.08);
    border:1px solid rgba(103, 232, 249, 0.20);
    border-radius:999px;
}

.hero h1{
    max-width:760px;
    margin:0 0 25px;

    color:#ffffff;
    font-size:clamp(48px, 5.2vw, 78px);
    line-height:1.04;
    font-weight:800;
    letter-spacing:-2.5px;
}

.hero h1 strong{
    color:#22d3ee;
    font-weight:800;
    text-shadow:0 0 28px rgba(34, 211, 238, 0.20);
}

.hero p{
    max-width:640px;
    margin-bottom:34px;

    color:#a7b2c5;
    font-size:18px;
    line-height:1.75;
    font-weight:400;
}

/* BOTONES 

.hero-botones{
    display:flex;
    align-items:center;
    gap:16px;
    flex-wrap:wrap;
}

.btn-primary,
.btn-secondary{
    min-height:52px;
    padding:0 27px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    font-size:15px;
    font-weight:700;
    text-decoration:none;
    border-radius:11px;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease;
}

.btn-primary{
    color:#ffffff;
    background:linear-gradient(135deg, #2563eb, #06b6d4);
    border:1px solid rgba(255,255,255,0.15);
    box-shadow:0 14px 35px rgba(6, 182, 212, 0.20);
}

.btn-primary:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 42px rgba(6, 182, 212, 0.32);
}

.btn-secondary{
    color:#ffffff;
    background:rgba(255,255,255,0.03);
    border:1px solid rgba(255,255,255,0.18);
}

.btn-secondary:hover{
    transform:translateY(-3px);
    background:rgba(255,255,255,0.08);
    border-color:rgba(103,232,249,0.45);
}
*/
/*======================================
                HERO
======================================*/

.hero{
    width:100%;
    min-height:calc(100vh - 80px);

    padding:130px 8% 90px;

    display:grid;
    grid-template-columns:minmax(0, 55fr) minmax(0, 45fr);
    gap:70px;

    align-items:center;

    background:
        radial-gradient(
            circle at 80% 40%,
            rgba(0, 174, 239, .13),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #030b1a 0%,
            #071426 55%,
            #041827 100%
        );

    overflow:hidden;
}

/*======================================
            CONTENIDO HERO
======================================*/

.hero-contenido{
    width:100%;
    max-width:720px;
}

.hero-contenido > span{
    display:inline-block;

    margin-bottom:22px;
    padding:8px 16px;

    color:#00C8FF;

    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;

    border:1px solid rgba(0, 200, 255, .35);
    border-radius:50px;

    background:rgba(0, 200, 255, .06);
}

.hero-contenido h1{
    margin:0 0 25px;

    color:#ffffff;

    font-size:clamp(52px, 4.6vw, 60px);
    font-weight:720;
    line-height:1.06;
    letter-spacing:-2px;
}

.hero-contenido h1 strong{
    color:#00C8FF;
    font-weight:780;
}

.hero-contenido p{
    max-width:620px;
    margin:0 0 35px;

    color:#cbd5e1;

    font-size:18px;
    line-height:1.8;
}

/*======================================
            BOTONES HERO
======================================*/

.hero-botones{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;
}

.hero-botones a{
    min-height:52px;
    padding:0 25px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    border-radius:8px;

    font-size:15px;
    font-weight:700;

    text-decoration:none;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        background .3s ease;
}

.btn-primary{
    color:#ffffff;

    background:linear-gradient(
        135deg,
        #2563EB,
        #00AEEF
    );

    box-shadow:0 12px 30px rgba(0, 174, 239, .23);
}

.btn-primary:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 35px rgba(0, 174, 239, .34);
}

.btn-secondary{
    color:#ffffff;

    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.04);
}

.btn-secondary:hover{
    transform:translateY(-3px);
    background:rgba(255,255,255,.09);
}

/*======================================
             IMAGEN HERO
======================================*/

.hero-imagen{
    width:100%;
    min-width:0;

    display:flex;
    align-items:center;
    justify-content:center;
}

.hero-imagen img{
    width:100%;
    max-width:680px;
    height:auto;

    display:block;
    object-fit:contain;
}
/* IMAGEN */

.hero-imagen{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;

    position:relative;
    z-index:2;
}

.hero-imagen::before{
    content:"";
    width:72%;
    aspect-ratio:1 / 1;

    position:absolute;

    border-radius:50%;
    background:radial-gradient(
        circle,
        rgba(6, 182, 212, 0.22),
        rgba(37, 99, 235, 0.07) 50%,
        transparent 72%
    );

    filter:blur(8px);
    z-index:-1;
}

.hero-imagen img{
    width:100%;
    max-width:680px;
    height:auto;
    display:block;

    object-fit:contain;

    filter:
        drop-shadow(0 25px 45px rgba(0,0,0,0.35))
        drop-shadow(0 0 28px rgba(6,182,212,0.12));

    animation:hero-flotante 5s ease-in-out infinite;
}

@keyframes hero-flotante{

    0%,
    100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-12px);
    }

}
/*======================================
            CLIENTES SOLO LOGO
======================================

.clientes{

    width:100%;
    padding:110px 8%;
    background:#ffffff;

}

.clientes-contenedor{

    max-width:1300px;
    margin:auto;
    text-align:center;

}

.clientes span{

    display:inline-block;

    color:#00D084;

    font-size:13px;

    font-weight:700;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.clientes h2{

    font-size:42px;

    color:#151515;

    margin-bottom:20px;

}

.clientes p{

    max-width:700px;

    margin:auto;

    color:#666;

    font-size:17px;

    line-height:1.8;

    margin-bottom:70px;

}

.clientes-logos{

    display:flex;

    justify-content:center;

    align-items:center;

    flex-wrap:wrap;

    gap:35px;

}

.cliente-item{

    width:240px;

    height:130px;

    background:#ffffff;

    border:1px solid #ececec;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    transition:.35s;

}

.cliente-item:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 45px rgba(0,0,0,.10);

}

.cliente-item img{

    width:170px;

    height:auto;

    transition:.35s;

}

.cliente-item:hover img{

    transform:scale(1.05);

}*/
/*======================================
            CLIENTES
======================================*/

.clientes{

    width:100%;
    padding:110px 8%;
    background:#f8fafc;

}

.clientes-contenedor{

    max-width:1300px;
    margin:auto;
    text-align:center;

}

.clientes span{

    display:inline-block;

    color:#2563eb;

    font-size:13px;

    font-weight:700;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.clientes h2{

    font-size:42px;

    color:#111;

    margin-bottom:20px;

}

.clientes p{

    max-width:760px;

    margin:auto;

    color:#666;

    font-size:17px;

    line-height:1.8;

    margin-bottom:70px;

}

.clientes-grid{

    display:grid;
    grid-template-columns:1fr;
    gap:35px;

}

.cliente-card{

    display:grid;
    grid-template-columns:260px 1fr;

    align-items:center;

    background:#fff;

    border-radius:24px;

    padding:45px;

    border:1px solid #ececec;

    transition:.35s;

    box-shadow:0 15px 40px rgba(0,0,0,.05);

}

.cliente-card:hover{

    transform:translateY(-8px);

    box-shadow:0 25px 55px rgba(0,0,0,.10);

}

.cliente-logo{

    display:flex;
    justify-content:center;
    align-items:center;

}

.cliente-logo img{

    width:180px;
    height:auto;

}

.cliente-info{

    text-align:left;

}

.cliente-info h3{

    font-size:30px;

    color:#151515;

    margin-bottom:18px;

}

.cliente-info p{

    margin:0;

    color:#666;

    font-size:16px;

    line-height:1.8;

}

.cliente-tags{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    margin-top:30px;

}

.cliente-tags span{

    margin:0;

    padding:10px 18px;

    background:#eef8f2;

    color:#2563eb;

    border-radius:30px;

    font-size:13px;

    font-weight:700;

    letter-spacing:.5px;

    text-transform:none;

}
.cliente-logo a{

    display:inline-block;

    transition:.35s;

}

.cliente-logo a:hover{

    transform:scale(1.05);

}

.cliente-logo img{

    width:180px;
    height:auto;
    display:block;

}
.cliente-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    margin-top:30px;

    padding:14px 28px;

    background:#00C853;

    color:#fff;

    text-decoration:none;

    font-weight:700;

    border-radius:50px;

    transition:.3s;

}

.cliente-btn:hover{

    background:#009944;

    transform:translateY(-3px);

}
/*======================================
            SERVICIOS
======================================*/

.servicios{
    width:100%;
    padding:110px 8%;
    background:#ffffff;
}

.servicios .seccion-titulo{
    width:100%;
    max-width:800px;
    margin:0 auto 70px;
    text-align:center;
}

.servicios .seccion-titulo span{
    display:inline-block;
    margin-bottom:18px;

    color:#2563eb;
    font-size:13px;
    font-weight:700;
    letter-spacing:3px;
    text-transform:uppercase;
}

.servicios .seccion-titulo h2{
    margin-bottom:22px;

    color:#151515;
    font-size:44px;
    line-height:1.2;
}

.servicios .seccion-titulo p{
    color:#666666;
    font-size:17px;
    line-height:1.8;
}

.servicios-grid{
    width:100%;
    max-width:1300px;
    margin:0 auto;

    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:35px;
}

.servicio-card{
    min-width:0;
    position:relative;
    overflow:hidden;

    display:flex;
    flex-direction:column;

    padding:45px;

    background:#ffffff;
    border:1px solid #ececec;
    border-radius:24px;

    box-shadow:0 12px 35px rgba(0,0,0,.05);

    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}

.servicio-card::before{
    content:"";

    width:100%;
    height:5px;

    position:absolute;
    top:0;
    left:0;

    background:linear-gradient(90deg,#2563eb,#06b6d4);
}

.servicio-card:hover{
    transform:translateY(-10px);

    border-color:#2563eb;

    box-shadow:
        0 25px 55px rgba(37,99,235,.15),
        0 0 0 1px rgba(37,99,235,.05);
}

.servicio-card img{
    width:100%;
    height:260px;

    display:block;

    margin-bottom:30px;

    object-fit:cover;
    object-position:center;

    border-radius:16px;

    transition:transform .45s ease;
}

.servicio-card:hover img{
    transform:scale(1.025);
}

.servicio-card h3{
    margin-bottom:18px;

    color:#151515;
    font-size:28px;
    line-height:1.25;
}

.servicio-card p{
    margin-bottom:30px;

    color:#666666;
    font-size:16px;
    line-height:1.8;
}

.servicio-card a{
    display:inline-flex;
    align-items:center;
    align-self:flex-start;
    gap:8px;

    margin-top:auto;

    color:#2563eb;
    font-size:15px;
    font-weight:700;
    text-decoration:none;

    transition:
        color .30s ease,
        transform .30s ease;
}

.servicio-card a:hover{
    color:#1d4ed8;
    transform:translateX(6px);
}
/*======================================
        CONSULTORÍA GRATUITA
======================================

.consultoria{

    width:100%;
    padding:110px 8%;

    background:
    radial-gradient(circle at top right,
    rgba(37,99,235,.18),
    transparent 35%),

    linear-gradient(135deg,#050b18,#081426);

}

.consultoria-contenedor{

    max-width:1400px;
    margin:0 auto;

    display:grid;
    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:70px;

}

.consultoria-info span{

    display:inline-block;

    margin-bottom:20px;

    padding:8px 18px;

    color:#67E8F9;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    border:1px solid rgba(103,232,249,.25);

    border-radius:50px;

    background:rgba(103,232,249,.08);

}

.consultoria-info h2{

    margin-bottom:25px;

    color:#ffffff;

    font-size:48px;

    line-height:1.15;

}

.consultoria-info p{

    margin-bottom:35px;

    color:#B8C2D3;

    font-size:18px;

    line-height:1.8;

}

.consultoria-lista{

    list-style:none;

    margin-bottom:40px;

}

.consultoria-lista li{

    margin-bottom:16px;

    color:#ffffff;

    font-size:17px;

}

.consultoria-botones{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.consultoria-imagen{

    display:flex;

    justify-content:center;

}

.consultoria-imagen img{

    width:100%;

    max-width:620px;

    border-radius:24px;

    box-shadow:
    0 25px 60px rgba(0,0,0,.45),
    0 0 40px rgba(37,99,235,.20);

    transition:.4s;

}

.consultoria-imagen img:hover{

    transform:translateY(-8px);

}*/
/*======================================
        CONSULTORÍA GRATUITA
======================================*/

.consultoria{

    width:100%;
    padding:110px 8%;

    background:#ffffff;

}

.consultoria-contenedor{

    max-width:1400px;
    margin:0 auto;

    display:grid;
    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:80px;

}

/*=========================
        IMAGEN
==========================*/

.consultoria-imagen{

    display:flex;
    justify-content:flex-start;

}

.consultoria-imagen img{

    width:100%;
    max-width:620px;

    display:block;

    border-radius:20px;

    box-shadow:0 20px 50px rgba(0,0,0,.12);

    transition:.35s ease;

}

.consultoria-imagen img:hover{

    transform:translateY(-6px);

}

/*=========================
        TEXTO
==========================*/

.consultoria-info span{

    display:inline-block;

    margin-bottom:18px;

    padding:8px 16px;

    color:#2563EB;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    border-radius:50px;

    background:#EFF6FF;

}

.consultoria-info h2{

    margin-bottom:25px;

    color:#111827;

    font-size:46px;

    font-weight:700;

    line-height:1.15;

}

.consultoria-info p{

    margin-bottom:35px;

    color:#4B5563;

    font-size:18px;

    line-height:1.8;

}

.consultoria-lista{

    list-style:none;

    margin:0 0 40px;

    padding:0;

}

.consultoria-lista li{

    position:relative;

    padding-left:30px;

    margin-bottom:16px;

    color:#1F2937;

    font-size:17px;

    line-height:1.6;

}

.consultoria-lista li::before{

    content:"✓";

    position:absolute;

    left:0;

    color:#2563EB;

    font-weight:700;

}

/*=========================
        BOTÓN
==========================*/
.consultoria-botones{

    display:flex;

    margin-top:10px;

}
.btn-primary-2{
    min-height:52px;
    padding:0 27px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    font-size:15px;
    font-weight:700;
    text-decoration:none;
    border-radius:11px;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease;
         color:#ffffff;

    background:linear-gradient(
        135deg,
        #2563EB,
        #00AEEF
    );
    }
    .btn-primary-2:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 42px rgba(6, 182, 212, 0.32);
}

/*======================================
            NTEGRAX CORE
======================================*/

.core{
    width:100%;
    padding:120px 8%;

    background:
        radial-gradient(
            circle at 78% 35%,
            rgba(37,99,235,.16),
            transparent 34%
        ),
        radial-gradient(
            circle at 20% 75%,
            rgba(6,182,212,.10),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #050b18 0%,
            #07101f 55%,
            #081426 100%
        );

    position:relative;
    overflow:hidden;
}

.core::before{
    content:"";

    width:420px;
    height:420px;

    position:absolute;
    top:-180px;
    right:-130px;

    border-radius:50%;
    background:rgba(37,99,235,.10);
    filter:blur(45px);

    pointer-events:none;
}

.core::after{
    content:"";

    width:330px;
    height:330px;

    position:absolute;
    bottom:-150px;
    left:-90px;

    border-radius:50%;
    background:rgba(6,182,212,.08);
    filter:blur(45px);

    pointer-events:none;
}

.core-contenedor{
    width:100%;
    max-width:1450px;
    margin:0 auto;

    display:grid;
    grid-template-columns:.9fr 1.1fr;
    align-items:center;
    gap:70px;

    position:relative;
    z-index:2;
}

/* INFORMACIÓN */

.core-info{
    max-width:650px;
}

.core-info > span{
    display:inline-block;

    margin-bottom:20px;
    padding:9px 16px;

    color:#67e8f9;
    font-size:13px;
    font-weight:700;
    letter-spacing:2.2px;
    text-transform:uppercase;

    background:rgba(6,182,212,.08);
    border:1px solid rgba(103,232,249,.20);
    border-radius:999px;
}

.core-info h2{
    margin-bottom:25px;

    color:#ffffff;
    font-size:clamp(42px,4vw,62px);
    line-height:1.08;
    letter-spacing:-1.8px;
}

.core-info h2 strong{
    display:block;

    color:#22d3ee;
    font-weight:800;
    text-shadow:0 0 28px rgba(34,211,238,.18);
}

.core-info > p{
    max-width:610px;
    margin-bottom:34px;

    color:#a7b2c5;
    font-size:18px;
    line-height:1.75;
}

/* MÓDULOS */

.core-modulos{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;

    margin-bottom:38px;
}

.core-modulos div{
    min-height:48px;
    padding:12px 16px;

    display:flex;
    align-items:center;

    color:#dbeafe;
    font-size:14px;
    font-weight:600;

    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.10);
    border-radius:10px;

    transition:
        transform .3s ease,
        border-color .3s ease,
        background .3s ease;
}

.core-modulos div:hover{
    transform:translateY(-3px);

    background:rgba(37,99,235,.10);
    border-color:rgba(96,165,250,.45);
}

/* BOTÓN */

.core-btn{
    min-height:52px;
    padding:0 27px;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    color:#ffffff;
    font-size:15px;
    font-weight:700;
    text-decoration:none;

    background:linear-gradient(135deg,#2563eb,#06b6d4);
    border:1px solid rgba(255,255,255,.15);
    border-radius:11px;

    box-shadow:0 14px 35px rgba(6,182,212,.20);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.core-btn:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 42px rgba(6,182,212,.32);
}

/* IMAGEN */

.core-imagen{
    width:100%;

    display:flex;
    align-items:center;
    justify-content:center;

    position:relative;
}

.core-imagen::before{
    content:"";

    width:78%;
    aspect-ratio:1 / 1;

    position:absolute;

    border-radius:50%;

    background:radial-gradient(
        circle,
        rgba(37,99,235,.22),
        rgba(6,182,212,.08) 52%,
        transparent 72%
    );

    filter:blur(12px);
    z-index:-1;
}

.core-imagen img{
    width:100%;
    max-width:780px;
    height:auto;

    display:block;

    border-radius:24px;

    box-shadow:
        0 30px 70px rgba(0,0,0,.42),
        0 0 45px rgba(37,99,235,.16);

    transition:
        transform .45s ease,
        box-shadow .45s ease;
}

.core-imagen img:hover{
    transform:translateY(-8px) scale(1.01);

    box-shadow:
        0 38px 85px rgba(0,0,0,.50),
        0 0 55px rgba(37,99,235,.23);
}
/*======================================
            CONTACTO
======================================*/

.contacto{

    width:100%;
    padding:120px 8%;

    background:#ffffff;

}

.contacto-contenedor{

    width:100%;
    max-width:1400px;

    margin:0 auto;

    display:grid;
    grid-template-columns:.9fr 1.1fr;

    gap:60px;

    align-items:start;

}

/*=========================
        INFORMACIÓN
=========================*/

.contacto-info span{

    display:inline-block;

    margin-bottom:20px;

    color:#2563EB;

    font-size:13px;

    font-weight:700;

    letter-spacing:3px;

    text-transform:uppercase;

}

.contacto-info h2{

    margin-bottom:25px;

    color:#151515;
    max-width:400px;
    line-height:1.15;

}

.contacto-info p{

    margin-bottom:45px;

    color:#666666;

     max-width:420px;

    line-height:1.8;

}

.contacto-datos{

    display:flex;
    flex-direction:column;

    gap:22px;

}

.contacto-dato{

    display:flex;
    align-items:center;

    gap:20px;

    padding:22px;

    background:#f8fafc;

    border:1px solid #e5e7eb;

    border-radius:18px;

    text-decoration:none;

    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;

}

.contacto-dato:hover{

    transform:translateY(-5px);

    border-color:#2563eb;

    box-shadow:0 18px 40px rgba(37,99,235,.12);

}

.contacto-icono{

    width:58px;
    height:58px;

    flex-shrink:0;

    display:flex;
    justify-content:center;
    align-items:center;

    background:transparent;
    border-radius:0;

}

.contacto-icono img{

    width:52px;
    height:52px;

    display:block;

    object-fit:contain;

    transition:
        transform .30s ease,
        filter .30s ease;

}
.contacto-dato:hover .contacto-icono img{

    transform:scale(1.08);

    filter:drop-shadow(0 0 10px rgba(37,99,235,.35));

}

.contacto-dato span{

    display:block;

    margin-bottom:6px;

    color:#888;

    font-size:13px;

    letter-spacing:1px;

}

.contacto-dato strong{

    color:#151515;

    font-size:18px;

}

/*=========================
        FORMULARIO
=========================*/

.contacto-formulario{

    padding:45px;

    background:#ffffff;

    border:1px solid #e5e7eb;

    border-radius:24px;

    box-shadow:0 20px 50px rgba(0,0,0,.06);

}

.form-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:22px;

}

.form-grupo{

    display:flex;

    flex-direction:column;

}

.form-grupo-completo{

    grid-column:1 / -1;

}

.form-grupo label{

    margin-bottom:10px;

    color:#333;

    font-size:14px;

    font-weight:600;

}

.form-grupo input,
.form-grupo select,
.form-grupo textarea{

    width:100%;

    padding:15px 18px;

    border:1px solid #dcdcdc;

    border-radius:12px;

    outline:none;

    font-size:15px;

    transition:.3s;

    box-sizing:border-box;

}

.form-grupo textarea{

    resize:vertical;

    min-height:160px;

}

.form-grupo input:focus,
.form-grupo select:focus,
.form-grupo textarea:focus{

    border-color:#2563EB;

    box-shadow:0 0 0 4px rgba(37,99,235,.10);

}

/*=========================
        PRIVACIDAD
=========================*/

.form-privacidad{

    display:flex;

    align-items:flex-start;

    gap:12px;

    margin:30px 0;

}

.form-privacidad input{

    margin-top:3px;

}

.form-privacidad label{

    color:#666;

    font-size:14px;

    line-height:1.7;

}

.form-privacidad a{

    color:#2563EB;

    text-decoration:none;

    font-weight:600;

}

/*=========================
          BOTÓN
=========================*/

.contacto-btn{

    width:100%;

    height:56px;

    border:none;

    border-radius:14px;

    background:linear-gradient(135deg,#2563EB,#1D4ED8);

    color:#ffffff;

    font-size:16px;

    font-weight:700;

    cursor:pointer;

    transition:.35s;

}

.contacto-btn:hover{

    transform:translateY(-3px);

    box-shadow:0 18px 35px rgba(37,99,235,.25);

}
/*======================================
              FOOTER
======================================*/

.footer{

    width:100%;

    background:
    radial-gradient(circle at top right,
    rgba(37,99,235,.12),
    transparent 30%),

    radial-gradient(circle at bottom left,
    rgba(6,182,212,.08),
    transparent 30%),

    #050B18;

    padding:90px 8% 0;

}

.footer-contenedor{

    width:100%;
    max-width:1400px;

    margin:0 auto;

    display:grid;

    grid-template-columns:1.6fr 1fr 1fr 1fr;

    gap:60px;

}

/*======================================
            LOGO
======================================*/

.footer-brand img{

    width:250px;

    margin-bottom:25px;

}

.footer-brand p{

    max-width:360px;

    color:#A7B2C5;

    font-size:16px;

    line-height:1.8;

    margin-bottom:30px;

}

.footer-social{

    display:flex;

    align-items:center;

    gap:18px;

    margin-top:30px;

}

.footer-social a{

    display:flex;

    justify-content:center;

    align-items:center;

    width:58px;

    height:58px;

    text-decoration:none;

    transition:
        transform .30s ease,
        filter .30s ease;

}

.footer-social a:hover{

    transform:translateY(-5px) scale(1.08);

    filter:drop-shadow(0 0 12px rgba(37,99,235,.45));

}

.footer-social img{

    width:52px;

    height:52px;

    display:block;

}
/*======================================
        FOOTER CONTACTO
======================================*/
.footer-contacto{

    display:flex;

    flex-direction:column;

}

.footer-contacto h3{

    margin-bottom:25px;

}
.footer-contacto-lista{

    display:flex;
    flex-direction:column;

    gap:20px;

}

.footer-contacto-item{

    display:flex;
    align-items:center;

    gap:15px;

    text-decoration:none;

}

.footer-contacto-icono{

    width:44px;
    height:44px;

    flex-shrink:0;

    display:flex;
    justify-content:center;
    align-items:center;

}

.footer-contacto-icono img{

    width:40px;
    height:40px;

    display:block;

    object-fit:contain;

    transition:
        transform .30s ease,
        filter .30s ease;

}

.footer-contacto-item:hover .footer-contacto-icono img{

    transform:scale(1.08);

    filter:drop-shadow(0 0 10px rgba(37,99,235,.45));

}

.footer-contacto-item span{

    display:block;

    margin-bottom:4px;

    color:#7C8AA5;

    font-size:13px;

    text-transform:uppercase;

    letter-spacing:1px;

    font-weight:600;

}

.footer-contacto-item strong{

    color:#ffffff;

    font-size:16px;

    font-weight:600;

}

.footer-contacto-item{

    color:#A7B2C5;

}

.footer-contacto-item:hover strong{

    color:#60A5FA;

}

/*======================================
          COLUMNAS
======================================*/

.footer-links h3,
.footer-contacto h3{

    margin-bottom:25px;

    color:#ffffff;

    font-size:20px;

}

.footer-links ul,
.footer-contacto ul{

    list-style:none;

}

.footer-links li,
.footer-contacto li{

    margin-bottom:16px;

}

.footer-links a{

    color:#A7B2C5;

    text-decoration:none;

    transition:.3s;

}

.footer-links a:hover{

    color:#60A5FA;

    padding-left:5px;

}

.footer-contacto strong{

    display:block;

    margin-bottom:6px;

    color:#ffffff;

    font-size:15px;

}

.footer-contacto{

    color:#A7B2C5;

}

.footer-contacto a{

    color:#A7B2C5;

    text-decoration:none;

    transition:.3s;

}

.footer-contacto a:hover{

    color:#60A5FA;

}

/*======================================
            COPYRIGHT
======================================*/

.footer-bottom{

    margin-top:70px;

    padding:30px 0;

    border-top:1px solid rgba(255,255,255,.08);

}

.footer-bottom p{

    color:#8C97A8;

    font-size:14px;

    text-align:center;

}
.footer-contacto-item > div:last-child{

    width:220px;

}
.input-error{
    border:2px solid #dc2626;
}

.input-ok{
    border:2px solid #16a34a;
}

.error-texto{
    color:#dc2626;
    font-size:13px;
    margin-top:6px;
}
/*SERVICIOS HTML*/
.servicio-lista{
    list-style:none;
    margin-top:20px;
    padding:0;
}

.servicio-lista li{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:10px;
    color:#4b5563;
    font-size:16px;
    line-height:1.5;
}

.servicio-lista li::before{
    content:"✓";
    color:#2563EB;
    font-weight:700;
    font-size:18px;
}
/*======================================
        SERVICIOS
======================================*/

.servicio{
    width:100%;
    padding:100px 8%;
    background:#ffffff;
}

.servicio-contenedor{

    max-width:1400px;
    margin:0 auto;

    display:grid;
    grid-template-columns:520px 1fr;
    gap:70px;

    align-items:center;

}

.servicio-imagen{

    width:100%;

}

.servicio-imagen img{

    width:100%;
    display:block;

    border-radius:20px;

    box-shadow:0 20px 50px rgba(0,0,0,.12);

}

.servicio-contenido span{

    display:inline-block;

    color:#2563EB;

    font-size:13px;

    font-weight:700;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.servicio-contenido h2{

    color:#1A1A1A;

    font-size:42px;

    font-weight:700;

    line-height:1.2;

    margin-bottom:25px;

}

.servicio-contenido p{

    color:#555;

    font-size:18px;

    line-height:1.9;

    margin-bottom:35px;

}

.servicio-lista{

    list-style:none;

    padding:0;

    margin:0;

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

}

.servicio-lista li{

    position:relative;

    padding-left:28px;

    color:#333;

    font-size:16px;

    font-weight:500;

    line-height:1.6;

}

.servicio-lista li::before{

    content:"✓";

    position:absolute;

    left:0;
    top:0;

    color:#2563EB;

    font-weight:700;

}
/*======================================
            NTEGRAX CORE IA
=======================================*/

/* Bloquea el scroll cuando el modal está abierto */

body.core-ia-activo{
    overflow:hidden;
}


/* Overlay */

.core-ia-overlay{

    position:fixed;
    inset:0;

    width:100%;
    height:100%;

    padding:30px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:rgba(3, 10, 25, 0.76);

    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);

    opacity:0;
    visibility:hidden;
    pointer-events:none;

    z-index:9999;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;

}


/* Overlay abierto */

.core-ia-overlay.activo{

    opacity:1;
    visibility:visible;
    pointer-events:auto;

}


/* Modal */

.core-ia-modal{

    width:min(920px, 100%);
    height:min(720px, calc(100vh - 60px));

    display:flex;
    flex-direction:column;

    background:
        radial-gradient(
            circle at top right,
            rgba(37, 99, 235, 0.18),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            #081426 0%,
            #0B1F3A 55%,
            #07111F 100%
        );

    border:1px solid rgba(96, 165, 250, 0.22);
    border-radius:26px;

    box-shadow:
        0 30px 90px rgba(0, 0, 0, 0.55),
        0 0 45px rgba(37, 99, 235, 0.12);

    overflow:hidden;

    opacity:0;
    transform:translateY(30px) scale(0.96);

    transition:
        opacity 0.35s ease,
        transform 0.35s ease;

}


/* Animación del modal */

.core-ia-overlay.activo .core-ia-modal{

    opacity:1;
    transform:translateY(0) scale(1);

}


/*======================================
            ENCABEZADO
=======================================*/

.core-ia-header{

    min-height:88px;

    padding:18px 24px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;

    background:rgba(6, 18, 35, 0.72);

    border-bottom:1px solid rgba(255, 255, 255, 0.08);

}


.core-ia-identidad{

    display:flex;
    align-items:center;
    gap:14px;

}


.core-ia-logo{

    width:52px;
    height:52px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    background:linear-gradient(
        145deg,
        rgba(37, 99, 235, 0.26),
        rgba(14, 165, 233, 0.12)
    );

    border:1px solid rgba(96, 165, 250, 0.24);
    border-radius:16px;

    box-shadow:
        inset 0 0 18px rgba(59, 130, 246, 0.08),
        0 8px 22px rgba(0, 0, 0, 0.22);

}


.core-ia-logo img{

    width:34px;
    height:34px;

    object-fit:contain;

}


.core-ia-identidad > div:last-child{

    display:flex;
    flex-direction:column;
    gap:4px;

}


.core-ia-identidad strong{

    color:#FFFFFF;

    font-size:18px;
    font-weight:700;

}


.core-ia-identidad span{

    color:#9FB4CF;

    font-size:13px;

}


/* Botón cerrar */

.core-ia-cerrar{

    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    color:#DCEAFF;
    background:rgba(255, 255, 255, 0.06);

    border:1px solid rgba(255, 255, 255, 0.10);
    border-radius:13px;

    font-family:inherit;
    font-size:29px;
    line-height:1;

    cursor:pointer;

    transition:
        background 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;

}


.core-ia-cerrar:hover{

    background:rgba(239, 68, 68, 0.16);
    border-color:rgba(248, 113, 113, 0.32);

    transform:rotate(6deg);

}


/*======================================
            CUERPO DEL CHAT
=======================================*/

.core-ia-body{

    flex:1;

    padding:28px;

    overflow-y:auto;
    overscroll-behavior:contain;

    scrollbar-width:thin;
    scrollbar-color:#2563EB rgba(255, 255, 255, 0.06);

}


.core-ia-body::-webkit-scrollbar{

    width:8px;

}


.core-ia-body::-webkit-scrollbar-track{

    background:rgba(255, 255, 255, 0.04);

}


.core-ia-body::-webkit-scrollbar-thumb{

    background:#2563EB;
    border-radius:20px;

}


/* Mensajes */

.core-mensaje{

    display:flex;
    align-items:flex-start;
    gap:14px;

    margin-bottom:24px;

}


.core-mensaje-ia{

    justify-content:flex-start;

}


/* Avatar */

.core-avatar{

    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    color:#FFFFFF;

    background:linear-gradient(
        145deg,
        #2563EB,
        #0EA5E9
    );

    border-radius:14px;

    font-size:13px;
    font-weight:800;
    letter-spacing:0.5px;

    box-shadow:
        0 10px 24px rgba(37, 99, 235, 0.30),
        0 0 22px rgba(14, 165, 233, 0.14);

}


/* Burbuja */

.core-burbuja{

    max-width:650px;

    padding:18px 20px;

    color:#DDE9F7;

    background:rgba(255, 255, 255, 0.065);

    border:1px solid rgba(255, 255, 255, 0.09);
    border-radius:7px 20px 20px 20px;

    box-shadow:0 12px 28px rgba(0, 0, 0, 0.15);

}


.core-burbuja strong{

    display:block;

    margin-bottom:8px;

    color:#FFFFFF;

    font-size:16px;
    font-weight:700;

}


.core-burbuja p{

    margin:0 0 9px;

    color:#C5D5E8;

    font-size:15px;
    line-height:1.65;

}


.core-burbuja p:last-child{

    margin-bottom:0;

}


/*======================================
            OPCIONES RÁPIDAS
=======================================*/

.core-ia-opciones{

    margin-left:58px;

    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:12px;

}


.core-opcion{

    min-height:74px;

    padding:14px 12px;

    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:7px;

    color:#DCEAFF;
    text-align:left;

    background:rgba(255, 255, 255, 0.045);

    border:1px solid rgba(96, 165, 250, 0.14);
    border-radius:16px;

    font-family:inherit;
    font-size:13px;
    font-weight:600;

    cursor:pointer;

    transition:
        transform 0.25s ease,
        background 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;

}


.core-opcion span{

    font-size:21px;

}


.core-opcion:hover{

    transform:translateY(-4px);

    color:#FFFFFF;

    background:linear-gradient(
        145deg,
        rgba(37, 99, 235, 0.24),
        rgba(14, 165, 233, 0.10)
    );

    border-color:rgba(96, 165, 250, 0.40);

    box-shadow:
        0 14px 28px rgba(0, 0, 0, 0.20),
        0 0 18px rgba(37, 99, 235, 0.10);

}


/*======================================
            FORMULARIO
=======================================*/

.core-ia-form{

    padding:18px 22px;

    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;

    background:rgba(5, 15, 29, 0.90);

    border-top:1px solid rgba(255, 255, 255, 0.08);

}


.core-ia-form input{

    width:100%;
    min-width:0;
    height:52px;

    padding:0 18px;

    color:#FFFFFF;
    background:rgba(255, 255, 255, 0.06);

    border:1px solid rgba(255, 255, 255, 0.11);
    border-radius:15px;

    outline:none;

    font-family:inherit;
    font-size:15px;

    transition:
        border-color 0.25s ease,
        background 0.25s ease,
        box-shadow 0.25s ease;

}


.core-ia-form input::placeholder{

    color:#7F95AF;

}


.core-ia-form input:focus{

    background:rgba(255, 255, 255, 0.085);
    border-color:#3B82F6;

    box-shadow:0 0 0 4px rgba(59, 130, 246, 0.12);

}


.core-ia-form button{

    min-width:128px;
    height:52px;

    padding:0 20px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    color:#FFFFFF;
    background:linear-gradient(
        135deg,
        #2563EB,
        #0EA5E9
    );

    border:none;
    border-radius:15px;

    font-family:inherit;
    font-size:14px;
    font-weight:700;

    cursor:pointer;

    box-shadow:0 12px 25px rgba(37, 99, 235, 0.26);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        filter 0.25s ease;

}


.core-ia-form button:hover{

    transform:translateY(-2px);

    filter:brightness(1.08);

    box-shadow:0 16px 32px rgba(37, 99, 235, 0.34);

}


/* Oculta visualmente etiquetas accesibles */

.sr-only{

    position:absolute;

    width:1px;
    height:1px;

    padding:0;
    margin:-1px;

    overflow:hidden;
    clip:rect(0, 0, 0, 0);

    white-space:nowrap;
    border:0;

}


/*======================================
            BOTÓN DEL HERO
=======================================*/

#abrir-core-ia{

    border:none;
    font-family:inherit;

    cursor:pointer;

}
/*======================================
        MENSAJE DEL USUARIO
=======================================*/

.core-mensaje-usuario{
    justify-content:flex-end;
}

.core-burbuja-usuario{
    max-width:70%;

    color:#FFFFFF;
    background:linear-gradient(
        135deg,
        #2563EB,
        #1D4ED8
    );

    border:none;
    border-radius:20px 7px 20px 20px;
}

.core-burbuja-usuario p{
    color:#FFFFFF;
}


/*======================================
        CORE IA ESCRIBIENDO
=======================================*/

.core-escribiendo{
    min-width:78px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
}

.core-escribiendo span{
    width:8px;
    height:8px;

    background:#60A5FA;
    border-radius:50%;

    animation:core-escribiendo 1.2s infinite ease-in-out;
}

.core-escribiendo span:nth-child(2){
    animation-delay:0.15s;
}

.core-escribiendo span:nth-child(3){
    animation-delay:0.30s;
}

@keyframes core-escribiendo{

    0%,
    60%,
    100%{
        opacity:0.35;
        transform:translateY(0);
    }

    30%{
        opacity:1;
        transform:translateY(-5px);
    }

}
/*======================================
      ANIMACIÓN DASHBOARD DINÁMICO
=======================================*/

.core-dashboard-cambiando{
    animation:coreCambioVista 0.45s ease;
}

@keyframes coreCambioVista{

    from{
        opacity:0.45;
        transform:translateY(8px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/* Notificación de demostración */

.core-notificacion-demo{
    position:fixed;
    right:25px;
    bottom:25px;
    z-index:9999;

    max-width:320px;
    padding:15px 20px;

    color:#FFFFFF;
    background:linear-gradient(
        135deg,
        #2563EB,
        #1D4ED8
    );

    border:1px solid rgba(255, 255, 255, 0.18);
    border-radius:13px;

    box-shadow:0 18px 45px rgba(15, 23, 42, 0.28);

    font-size:13px;
    font-weight:700;

    opacity:0;
    transform:translateY(18px);

    transition:
        opacity 0.3s ease,
        transform 0.3s ease;
}

.core-notificacion-demo.visible{
    opacity:1;
    transform:translateY(0);
}


@media(max-width:480px){

    .core-notificacion-demo{
        right:14px;
        bottom:14px;
        left:14px;

        max-width:none;

        text-align:center;
    }

}


/*======================================
    USUARIOS CON MENOS ANIMACIONES
=======================================*/

@media(prefers-reduced-motion:reduce){

    .core-ia-overlay,
    .core-ia-modal,
    .core-opcion,
    .core-ia-cerrar,
    .core-ia-form button{

        transition:none;

    }

}
/*======================================
      SECCIÓN DASHBOARD NTEGRAX CORE
=======================================*/

.core-dashboard-seccion{
    width:100%;
    padding:110px 6%;
    background:
        radial-gradient(
            circle at top right,
            rgba(37, 99, 235, 0.10),
            transparent 34%
        ),
        #F5F8FC;
}


/*======================================
          ENCABEZADO DE SECCIÓN
=======================================*/

.core-dashboard-encabezado{
    max-width:850px;
    margin:0 auto 55px;
    text-align:center;
}

.core-dashboard-encabezado > span{
    display:block;
    margin-bottom:14px;

    color:#2563EB;

    font-size:13px;
    font-weight:800;
    letter-spacing:2.5px;
}

.core-dashboard-encabezado h2{
    margin:0 0 18px;

    color:#0B1F3A;

    font-size:clamp(34px, 5vw, 58px);
    line-height:1.08;
    font-weight:800;
}

.core-dashboard-encabezado h2 strong{
    color:#2563EB;
}

.core-dashboard-encabezado p{
    max-width:720px;
    margin:0 auto;

    color:#64748B;

    font-size:17px;
    line-height:1.7;
}


/*======================================
            CONTENEDOR GENERAL
=======================================*/

.core-dashboard-demo{
    max-width:1500px;
    min-height:880px;

    margin:0 auto;

    display:grid;
    grid-template-columns:250px 1fr;

    background:#071426;

    border:1px solid rgba(37, 99, 235, 0.18);
    border-radius:28px;

    overflow:hidden;

    box-shadow:
        0 35px 80px rgba(15, 23, 42, 0.20),
        0 0 0 1px rgba(255, 255, 255, 0.30);
}


/*======================================
                SIDEBAR
=======================================*/

.core-sidebar{
    padding:24px 18px;

    display:flex;
    flex-direction:column;

    background:
        linear-gradient(
            180deg,
            #071A33 0%,
            #061426 100%
        );

    border-right:1px solid rgba(255, 255, 255, 0.06);
}

.core-sidebar-logo{
    padding:0 8px 25px;

    display:flex;
    align-items:center;
    gap:12px;

    border-bottom:1px solid rgba(255, 255, 255, 0.07);
}

.core-sidebar-logo img{
    width:44px;
    height:44px;
    object-fit:contain;
}

.core-sidebar-logo > div{
    display:flex;
    flex-direction:column;
}

.core-sidebar-logo strong{
    color:#FFFFFF;
    font-size:17px;
    letter-spacing:1px;
}

.core-sidebar-logo span{
    color:#60A5FA;
    font-size:12px;
    font-weight:800;
    letter-spacing:3px;
}


/*======================================
              MENÚ LATERAL
=======================================*/

.core-sidebar-menu{
    margin-top:24px;

    display:flex;
    flex-direction:column;
    gap:7px;
}

.core-menu-item{
    width:100%;
    min-height:47px;

    padding:0 14px;

    display:flex;
    align-items:center;
    gap:12px;

    color:#AFC2D9;
    background:transparent;

    border:none;
    border-radius:12px;

    font-family:inherit;
    font-size:14px;
    font-weight:600;
    text-align:left;

    cursor:pointer;

    transition:
        color 0.25s ease,
        background 0.25s ease,
        transform 0.25s ease;
}

.core-menu-item:hover{
    color:#FFFFFF;
    background:rgba(37, 99, 235, 0.12);
    transform:translateX(3px);
}

.core-menu-item.activo{
    color:#FFFFFF;

    background:linear-gradient(
        135deg,
        #2563EB,
        #1D4ED8
    );

    box-shadow:0 10px 24px rgba(37, 99, 235, 0.28);
}

.core-menu-icono{
    width:24px;

    display:flex;
    justify-content:center;

    font-size:17px;
}


/*======================================
          TARJETA CORE IA SIDEBAR
=======================================*/

.core-sidebar-ia{
    margin-top:auto;
    padding:20px 16px;

    text-align:center;

    background:
        radial-gradient(
            circle at top,
            rgba(37, 99, 235, 0.26),
            transparent 65%
        ),
        rgba(255, 255, 255, 0.035);

    border:1px solid rgba(96, 165, 250, 0.20);
    border-radius:18px;
}

.core-sidebar-ia-icono{
    width:48px;
    height:48px;

    margin:0 auto 12px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#FFFFFF;

    background:linear-gradient(
        135deg,
        #2563EB,
        #0EA5E9
    );

    border-radius:15px;

    font-size:13px;
    font-weight:800;

    box-shadow:0 10px 28px rgba(37, 99, 235, 0.30);
}

.core-sidebar-ia strong{
    display:block;
    margin-bottom:7px;

    color:#FFFFFF;
    font-size:15px;
}

.core-sidebar-ia p{
    margin:0 0 15px;

    color:#9FB4CF;

    font-size:12px;
    line-height:1.5;
}

.core-sidebar-ia button{
    width:100%;
    min-height:40px;

    color:#FFFFFF;
    background:#2563EB;

    border:none;
    border-radius:11px;

    font-family:inherit;
    font-size:12px;
    font-weight:700;

    cursor:pointer;

    transition:
        background 0.25s ease,
        transform 0.25s ease;
}

.core-sidebar-ia button:hover{
    background:#1D4ED8;
    transform:translateY(-2px);
}


/*======================================
            USUARIO SIDEBAR
=======================================*/

.core-sidebar-usuario{
    margin-top:18px;
    padding:16px 8px 0;

    display:flex;
    align-items:center;
    gap:10px;

    border-top:1px solid rgba(255, 255, 255, 0.07);
}

.core-usuario-avatar{
    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    color:#FFFFFF;
    background:#1E3A5F;

    border-radius:50%;

    font-size:12px;
    font-weight:800;
}

.core-sidebar-usuario > div:last-child{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.core-sidebar-usuario strong{
    color:#FFFFFF;
    font-size:12px;
}

.core-sidebar-usuario span{
    color:#7F95AF;
    font-size:10px;
}


/*======================================
         CONTENIDO DEL DASHBOARD
=======================================*/

.core-dashboard-contenido{
    min-width:0;
    padding:26px;

    background:
        radial-gradient(
            circle at top right,
            rgba(37, 99, 235, 0.12),
            transparent 32%
        ),
        #08172A;
}


/*======================================
            HEADER INTERNO
=======================================*/

.core-dashboard-header{
    margin-bottom:24px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.core-dashboard-header > div:first-child span{
    display:block;
    margin-bottom:4px;

    color:#60A5FA;

    font-size:11px;
    font-weight:700;
    letter-spacing:1.6px;
    text-transform:uppercase;
}

.core-dashboard-header h3{
    margin:0;

    color:#FFFFFF;

    font-size:24px;
    font-weight:750;
}

.core-dashboard-acciones{
    display:flex;
    align-items:center;
    gap:10px;
}

.core-dashboard-acciones > button{
    position:relative;

    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#DCEAFF;
    background:rgba(255, 255, 255, 0.055);

    border:1px solid rgba(255, 255, 255, 0.08);
    border-radius:12px;

    cursor:pointer;

    transition:
        background 0.25s ease,
        transform 0.25s ease;
}

.core-dashboard-acciones > button:hover{
    background:rgba(37, 99, 235, 0.16);
    transform:translateY(-2px);
}

.core-notificacion{
    position:absolute;
    top:-5px;
    right:-4px;

    width:18px;
    height:18px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#FFFFFF;
    background:#EF4444;

    border:2px solid #08172A;
    border-radius:50%;

    font-size:9px;
    font-weight:800;
}

.core-dashboard-perfil{
    min-height:42px;
    padding:5px 10px 5px 6px;

    display:flex;
    align-items:center;
    gap:10px;

    background:rgba(255, 255, 255, 0.04);

    border:1px solid rgba(255, 255, 255, 0.07);
    border-radius:13px;
}

.core-perfil-avatar{
    width:32px;
    height:32px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#FFFFFF;
    background:#2563EB;

    border-radius:10px;

    font-size:10px;
    font-weight:800;
}

.core-dashboard-perfil > div:last-child{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.core-dashboard-perfil strong{
    color:#FFFFFF;
    font-size:11px;
}

.core-dashboard-perfil span{
    color:#38BDF8;
    font-size:9px;
}


/*======================================
                KPIs
=======================================*/

.core-kpis{
    margin-bottom:20px;

    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:15px;
}

.core-kpi-card{
    min-width:0;
    padding:18px;

    background:
        linear-gradient(
            145deg,
            rgba(15, 38, 70, 0.95),
            rgba(10, 28, 53, 0.95)
        );

    border:1px solid rgba(96, 165, 250, 0.10);
    border-radius:17px;

    box-shadow:0 12px 28px rgba(0, 0, 0, 0.14);

    transition:
        transform 0.25s ease,
        border-color 0.25s ease;
}

.core-kpi-card:hover{
    transform:translateY(-4px);
    border-color:rgba(96, 165, 250, 0.28);
}

.core-kpi-superior{
    margin-bottom:15px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.core-kpi-icono{
    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#FFFFFF;
    background:rgba(37, 99, 235, 0.22);

    border-radius:11px;

    font-size:16px;
}

.core-kpi-superior small{
    color:#34D399;

    font-size:11px;
    font-weight:800;
}

.core-kpi-card p{
    margin:0 0 7px;

    color:#9FB4CF;

    font-size:12px;
}

.core-kpi-card > strong{
    display:block;
    margin-bottom:7px;

    color:#FFFFFF;

    font-size:24px;
    line-height:1.1;
}

.core-kpi-card > span{
    color:#7187A2;

    font-size:10px;
}


/*======================================
            GRID DEL DASHBOARD
=======================================*/

.core-dashboard-grid{
    display:grid;
    grid-template-columns:minmax(0, 1.5fr) minmax(280px, 0.8fr);
    gap:16px;
}

.core-panel{
    min-width:0;
    padding:20px;

    background:
        linear-gradient(
            145deg,
            rgba(13, 34, 63, 0.96),
            rgba(8, 25, 48, 0.96)
        );

    border:1px solid rgba(96, 165, 250, 0.10);
    border-radius:18px;

    box-shadow:0 14px 30px rgba(0, 0, 0, 0.14);
}

.core-panel-header{
    margin-bottom:18px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
}

.core-panel-header > div span{
    display:block;
    margin-bottom:4px;

    color:#60A5FA;

    font-size:9px;
    font-weight:800;
    letter-spacing:1.5px;
}

.core-panel-header h4{
    margin:0;

    color:#FFFFFF;

    font-size:16px;
}

.core-panel-header select{
    height:34px;
    padding:0 10px;

    color:#C9D9EA;
    background:#0B203D;

    border:1px solid rgba(255, 255, 255, 0.09);
    border-radius:9px;

    outline:none;

    font-family:inherit;
    font-size:10px;
}

.core-panel-header button{
    padding:0;

    color:#60A5FA;
    background:none;

    border:none;

    font-family:inherit;
    font-size:10px;
    font-weight:700;

    cursor:pointer;
}
/*======================================
                DONUT
=======================================*/

.core-donut-contenido{
    min-height:245px;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:22px;
}

.core-donut{
    position:relative;
    width:180px;
    height:180px;
    flex-shrink:0;
    background:none;

    border:none;

    box-shadow:none;

}
.core-donut canvas{
    width:100% !important;
    height:100% !important;
}

.core-donut-centro{
    position:absolute;
    top:50%;
    left:50%;

    transform:translate(-50%, -50%);

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    pointer-events:none;

    text-align:center;
}

.core-donut-centro span{
    color:#7187A2;
    font-size:10px;
    font-weight:600;
}

.core-donut-centro strong{
    margin-top:3px;

    color:#FFFFFF;

    font-size:18px;
    font-weight:800;
}

.core-donut::before{
    content:"";

    position:absolute;

    width:92px;
    height:92px;

    /*background:#0A1C35;*/
    border-radius:50%;
}

.core-donut > div{
    position:relative;
    z-index:1;

    display:flex;
    flex-direction:column;
    align-items:center;
}

.core-donut span{
    color:#7F95AF;
    font-size:10px;
}

.core-donut strong{
    color:#FFFFFF;
    font-size:18px;
}

.core-donut-leyenda{
    width:100%;
    margin:0;
    padding:0;

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;

    list-style:none;
}

.core-donut-leyenda li{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:7px;

    color:#9FB4CF;

    font-size:10px;
}

.core-donut-leyenda li > span{
    width:8px;
    height:8px;

    background:#2563EB;
    border-radius:50%;
}

.core-donut-leyenda li:nth-child(2) > span{
    background:#06B6D4;
}

.core-donut-leyenda li:nth-child(3) > span{
    background:#8B5CF6;
}

.core-donut-leyenda li:nth-child(4) > span{
    background:#F59E0B;
}

.core-donut-leyenda strong{
    color:#FFFFFF;
    font-size:10px;
}


/*======================================
               ALERTAS
=======================================*/

.core-alertas-lista{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.core-alerta{
    padding:12px;

    display:flex;
    align-items:center;
    gap:11px;

    background:rgba(255, 255, 255, 0.035);

    border:1px solid rgba(255, 255, 255, 0.06);
    border-radius:12px;
}

.core-alerta > span{
    width:32px;
    height:32px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    border-radius:9px;

    font-size:12px;
    font-weight:800;
}

.core-alerta-roja > span{
    color:#FCA5A5;
    background:rgba(239, 68, 68, 0.15);
}

.core-alerta-amarilla > span{
    color:#FCD34D;
    background:rgba(245, 158, 11, 0.15);
}

.core-alerta-azul > span{
    color:#60A5FA;
    background:rgba(37, 99, 235, 0.16);
}

.core-alerta strong{
    display:block;
    margin-bottom:3px;

    color:#FFFFFF;

    font-size:11px;
}

.core-alerta p{
    margin:0;

    color:#7F95AF;

    font-size:9px;
}


/*======================================
            ACTIVIDAD RECIENTE
=======================================*/

.core-actividad-lista{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.core-actividad-item{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:10px;
}

.core-actividad-icono{
    width:32px;
    height:32px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#60A5FA;
    background:rgba(37, 99, 235, 0.14);

    border-radius:9px;

    font-size:11px;
    font-weight:800;
}

.core-actividad-item strong{
    display:block;
    margin-bottom:2px;

    color:#FFFFFF;

    font-size:10px;
}

.core-actividad-item p{
    margin:0;

    color:#7187A2;

    font-size:9px;
}

.core-actividad-item small{
    color:#5F7692;

    font-size:8px;
    white-space:nowrap;
}


/*======================================
              INSIGHT IA
=======================================*/

.core-panel-insight{
    grid-column:1 / -1;

    display:flex;
    align-items:center;
    gap:20px;

    background:
        radial-gradient(
            circle at left,
            rgba(37, 99, 235, 0.24),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #0B2446,
            #0A1A31
        );
}

.core-insight-icono{
    width:62px;
    height:62px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    color:#FFFFFF;

    background:linear-gradient(
        135deg,
        #2563EB,
        #0EA5E9
    );

    border-radius:19px;

    font-size:16px;
    font-weight:800;

    box-shadow:0 12px 28px rgba(37, 99, 235, 0.30);
}

.core-panel-insight span{
    display:block;
    margin-bottom:5px;

    color:#60A5FA;

    font-size:9px;
    font-weight:800;
    letter-spacing:1.5px;
}

.core-panel-insight h4{
    margin:0 0 8px;

    color:#FFFFFF;

    font-size:16px;
}

.core-panel-insight p{
    max-width:770px;
    margin:0 0 13px;

    color:#9FB4CF;

    font-size:11px;
    line-height:1.6;
}

.core-panel-insight button{
    min-height:36px;
    padding:0 16px;

    color:#FFFFFF;
    background:#2563EB;

    border:none;
    border-radius:10px;

    font-family:inherit;
    font-size:10px;
    font-weight:700;

    cursor:pointer;
}


/*======================================
           ACCESOS RÁPIDOS
=======================================*/

.core-accesos-rapidos{
    margin-top:16px;
    padding:18px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;

    background:rgba(255, 255, 255, 0.035);

    border:1px solid rgba(255, 255, 255, 0.06);
    border-radius:16px;
}

.core-accesos-rapidos > div:first-child span{
    display:block;
    margin-bottom:4px;

    color:#60A5FA;

    font-size:8px;
    font-weight:800;
    letter-spacing:1.4px;
}

.core-accesos-rapidos h4{
    margin:0;

    color:#FFFFFF;

    font-size:14px;
}

.core-accesos-lista{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:9px;
}

.core-accesos-lista button{
    min-height:38px;
    padding:0 13px;

    display:flex;
    align-items:center;
    gap:7px;

    color:#C9D9EA;
    background:#0B203D;

    border:1px solid rgba(255, 255, 255, 0.08);
    border-radius:10px;

    font-family:inherit;
    font-size:9px;
    font-weight:600;

    cursor:pointer;

    transition:
        background 0.25s ease,
        transform 0.25s ease;
}

.core-accesos-lista button:hover{
    background:#15345D;
    transform:translateY(-2px);
}
/*======================================
        GRÁFICA REAL CHART.JS
=======================================*/

.core-grafica-chart{
    position:relative;

    width:100%;
    height:270px;

    padding:10px 4px 0;

    overflow:hidden;

    border-radius:14px;
}

.core-grafica-chart canvas{
    width:100% !important;
    height:100% !important;
}
/*======================================
          ANIMACIÓN DE KPIS
=======================================*/

.core-kpi-card{
    overflow:hidden;
}

.core-kpi-card.core-kpi-animando{
    animation:coreKpiEntrada 0.45s ease;
}

@keyframes coreKpiEntrada{

    from{
        opacity:0.45;
        transform:translateY(8px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}
/*======================================
          MODAL DASHBOARD AI
=======================================*/

.dashboard-ai-overlay{

    position:fixed;
    inset:0;

    z-index:9999;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:30px;

    background:rgba(3, 12, 24, 0.78);

    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);

    opacity:0;
    visibility:hidden;
    pointer-events:none;

    transition:
        opacity 0.3s ease,
        visibility 0.3s ease;

}


/* MODAL ACTIVO */

.dashboard-ai-overlay.activo{

    opacity:1;
    visibility:visible;
    pointer-events:auto;

}


/* CONTENEDOR PRINCIPAL */

.dashboard-ai-modal{

    width:min(920px, 100%);
    max-height:90vh;

    display:flex;
    flex-direction:column;

    overflow:hidden;

    background:
        linear-gradient(
            145deg,
            rgba(15, 38, 68, 0.98),
            rgba(7, 23, 43, 0.99)
        );

    border:1px solid rgba(96, 165, 250, 0.22);

    border-radius:24px;

    box-shadow:
        0 30px 80px rgba(0, 0, 0, 0.45),
        0 0 40px rgba(37, 99, 235, 0.10);

    transform:translateY(25px) scale(0.97);

    transition:transform 0.3s ease;

}


/* ANIMACIÓN DE ENTRADA */

.dashboard-ai-overlay.activo .dashboard-ai-modal{

    transform:translateY(0) scale(1);

}


/*======================================
              ENCABEZADO
=======================================*/

.dashboard-ai-header{

    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:25px;

    padding:24px 28px;

    border-bottom:1px solid rgba(255, 255, 255, 0.08);

    background:rgba(8, 26, 48, 0.72);

}


/* MARCA */

.dashboard-ai-marca{

    display:flex;
    align-items:center;

    gap:14px;

}


/* ÍCONO */

.dashboard-ai-icono{

    width:48px;
    height:48px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    border-radius:14px;

    color:#FFFFFF;

    font-size:15px;
    font-weight:800;

    background:
        linear-gradient(
            135deg,
            #2563EB,
            #06B6D4
        );

    box-shadow:
        0 10px 25px rgba(37, 99, 235, 0.30);

}


/* TEXTO SUPERIOR */

.dashboard-ai-marca small{

    display:block;

    margin-bottom:4px;

    color:#60A5FA;

    font-size:11px;
    font-weight:800;

    letter-spacing:1.8px;

}


/* TÍTULO */

.dashboard-ai-marca h2{

    margin:0;

    color:#FFFFFF;

    font-size:25px;
    font-weight:750;

    line-height:1.2;

}


/* BOTÓN CERRAR */

.dashboard-ai-cerrar{

    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    flex-shrink:0;

    padding:0;

    border:1px solid rgba(255, 255, 255, 0.10);
    border-radius:12px;

    background:rgba(255, 255, 255, 0.05);

    color:#CBD5E1;

    font-size:27px;
    font-weight:300;

    line-height:1;

    cursor:pointer;

    transition:
        background 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;

}


.dashboard-ai-cerrar:hover{

    color:#FFFFFF;

    background:rgba(239, 68, 68, 0.18);

    transform:rotate(4deg);

}


/*======================================
              CONTENIDO
=======================================*/

.dashboard-ai-contenido{

    overflow-y:auto;

    padding:26px 28px;

    scrollbar-width:thin;
    scrollbar-color:#2563EB rgba(255,255,255,0.04);

}


.dashboard-ai-contenido::-webkit-scrollbar{

    width:8px;

}


.dashboard-ai-contenido::-webkit-scrollbar-track{

    background:rgba(255,255,255,0.04);

}


.dashboard-ai-contenido::-webkit-scrollbar-thumb{

    border-radius:20px;

    background:#2563EB;

}


/* BLOQUES GENERALES */

.dashboard-ai-bloque{

    padding:22px;

    margin-bottom:18px;

    border:1px solid rgba(255, 255, 255, 0.07);
    border-radius:18px;

    background:rgba(255, 255, 255, 0.035);

}


/* ETIQUETA */

.dashboard-ai-etiqueta{

    display:inline-block;

    margin-bottom:8px;

    color:#60A5FA;

    font-size:11px;
    font-weight:800;

    letter-spacing:1.5px;
    text-transform:uppercase;

}


/* TÍTULOS INTERNOS */

.dashboard-ai-bloque h3{

    margin:0 0 9px;

    color:#FFFFFF;

    font-size:20px;
    font-weight:720;

    line-height:1.3;

}


/* TEXTO INTERNO */

.dashboard-ai-bloque p{

    margin:0;

    color:#AFC0D4;

    font-size:14px;
    line-height:1.75;

}


/* RESUMEN */

.dashboard-ai-resumen{

    background:
        linear-gradient(
            135deg,
            rgba(37, 99, 235, 0.15),
            rgba(6, 182, 212, 0.06)
        );

    border-color:rgba(96, 165, 250, 0.18);

}


/* RIESGO */

.dashboard-ai-riesgo{

    background:rgba(245, 158, 11, 0.07);

    border-color:rgba(245, 158, 11, 0.22);

}


.dashboard-ai-riesgo .dashboard-ai-etiqueta{

    color:#FBBF24;

}


/* RECOMENDACIÓN */

.dashboard-ai-recomendacion{

    background:rgba(34, 197, 94, 0.07);

    border-color:rgba(34, 197, 94, 0.20);

}


.dashboard-ai-recomendacion .dashboard-ai-etiqueta{

    color:#4ADE80;

}


/*======================================
              INDICADORES
=======================================*/

.dashboard-ai-indicadores{

    display:grid;

    grid-template-columns:repeat(3, 1fr);

    gap:16px;

    margin-bottom:18px;

}


.dashboard-ai-indicador{

    min-width:0;

    padding:20px;

    border:1px solid rgba(255, 255, 255, 0.07);
    border-radius:16px;

    background:rgba(255, 255, 255, 0.04);

    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease;

}


.dashboard-ai-indicador:hover{

    transform:translateY(-3px);

    border-color:rgba(96, 165, 250, 0.25);

    background:rgba(37, 99, 235, 0.08);

}


.dashboard-ai-indicador span{

    display:block;

    margin-bottom:8px;

    color:#8296AE;

    font-size:12px;
    font-weight:650;

}


.dashboard-ai-indicador strong{

    display:block;

    margin-bottom:6px;

    color:#FFFFFF;

    font-size:25px;
    font-weight:800;

    line-height:1.2;

}


.dashboard-ai-indicador small{

    display:block;

    color:#AFC0D4;

    font-size:11px;
    line-height:1.5;

}


/*======================================
                FOOTER
=======================================*/

.dashboard-ai-footer{

    display:flex;
    align-items:center;
    justify-content:flex-end;

    gap:12px;

    padding:20px 28px;

    border-top:1px solid rgba(255, 255, 255, 0.08);

    background:rgba(8, 26, 48, 0.78);

}


/* BOTONES */

.dashboard-ai-footer button{

    min-height:44px;

    padding:0 20px;

    border-radius:12px;

    font-family:inherit;
    font-size:13px;
    font-weight:750;

    cursor:pointer;

    transition:
        transform 0.25s ease,
        background 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;

}


/* BOTÓN SECUNDARIO */

.dashboard-ai-btn-secundario{

    border:1px solid rgba(255, 255, 255, 0.12);

    background:rgba(255, 255, 255, 0.05);

    color:#CBD5E1;

}


.dashboard-ai-btn-secundario:hover{

    color:#FFFFFF;

    background:rgba(255, 255, 255, 0.09);

    border-color:rgba(255, 255, 255, 0.20);

}


/* BOTÓN CORE IA */

.dashboard-ai-btn-core{

    border:1px solid transparent;

    color:#FFFFFF;

    background:
        linear-gradient(
            135deg,
            #2563EB,
            #0EA5E9
        );

    box-shadow:
        0 10px 24px rgba(37, 99, 235, 0.24);

}


.dashboard-ai-btn-core:hover{

    transform:translateY(-2px);

    box-shadow:
        0 14px 30px rgba(37, 99, 235, 0.34);

}


/* BLOQUEAR SCROLL AL ABRIR */

body.dashboard-ai-activo{

    overflow:hidden;

}


/*======================================
              RESPONSIVE
=======================================*/

@media (max-width:768px){

    .dashboard-ai-overlay{

        padding:18px;

    }


    .dashboard-ai-modal{

        max-height:92vh;

        border-radius:20px;

    }


    .dashboard-ai-header{

        padding:20px;

    }


    .dashboard-ai-marca h2{

        font-size:21px;

    }


    .dashboard-ai-contenido{

        padding:20px;

    }


    .dashboard-ai-indicadores{

        grid-template-columns:1fr;

        gap:12px;

    }


    .dashboard-ai-footer{

        padding:18px 20px;

    }

}


@media (max-width:480px){

    .dashboard-ai-overlay{

        align-items:flex-end;

        padding:0;

    }


    .dashboard-ai-modal{

        width:100%;
        max-height:94vh;

        border-radius:22px 22px 0 0;

    }


    .dashboard-ai-header{

        gap:14px;

        padding:18px 16px;

    }


    .dashboard-ai-icono{

        width:42px;
        height:42px;

        border-radius:12px;

        font-size:13px;

    }


    .dashboard-ai-marca small{

        font-size:10px;

    }


    .dashboard-ai-marca h2{

        font-size:18px;

    }


    .dashboard-ai-cerrar{

        width:38px;
        height:38px;

        font-size:24px;

    }


    .dashboard-ai-contenido{

        padding:16px;

    }


    .dashboard-ai-bloque{

        padding:18px;

    }


    .dashboard-ai-bloque h3{

        font-size:17px;

    }


    .dashboard-ai-indicador{

        padding:17px;

    }


    .dashboard-ai-indicador strong{

        font-size:22px;

    }


    .dashboard-ai-footer{

        flex-direction:column-reverse;

        gap:10px;

        padding:16px;

    }


    .dashboard-ai-footer button{

        width:100%;

    }

}

/*TABLETS*/
@media (max-width:1200px){

    .header{
        padding:0 4%;
        gap:20px;
    }

    .logo img{
        width:160px;
    }

    .menu{
        gap:20px;
    }

    .menu a{
        font-size:14px;
    }

    .header-btn{
        padding:0 18px;
    }
     /*.hero{
        padding:145px 5% 75px;
        gap:45px;
    }

    .hero h1{
        font-size:clamp(44px, 5vw, 66px);
    }

    .hero-imagen img{
        max-width:580px;
    }*/
    .hero{

    min-height:auto;
    padding:150px 5% 90px;

}

.hero-contenedor{

    max-width:1100px;

    grid-template-columns:1fr 420px;

    gap:40px;

    align-items:center;

}

.hero-contenido h1{

    font-size:52px;

    line-height:1.1;

}

.hero-contenido p{

    max-width:500px;

    font-size:17px;

}

.hero-imagen{

    justify-content:center;

}

.hero-imagen img{

    width:100%;
    max-width:420px;

}
    .core{
    padding:105px 5%;
}

.core-contenedor{
    gap:45px;
}

.core-info h2{
    font-size:50px;
}

.core-imagen img{
    max-width:680px;
}
.consultoria{

    padding:90px 5%;

}

.consultoria-contenedor{

    gap:50px;

}

.consultoria-info h2{

    font-size:42px;

}

.consultoria-info p{

    font-size:17px;

}

.consultoria-lista li{

    font-size:16px;

}

.consultoria-imagen{

    justify-content:center;

}

.consultoria-imagen img{

    max-width:560px;

}

.footer-contenedor{

    grid-template-columns:repeat(2,1fr);

    gap:50px;

}
.footer-social{

    gap:16px;

}

.footer-social a{

    width:54px;
    height:54px;

}

.footer-social img{

    width:48px;
    height:48px;

}
.footer-contacto-lista{
        gap:18px;
    }

    .footer-contacto-item{
        gap:13px;
    }

    .footer-contacto-icono{
        width:42px;
        height:42px;

        flex:0 0 42px;
    }

    .footer-contacto-icono img{
        width:38px;
        height:38px;
    }

    .footer-contacto-item span{
        font-size:11px;
    }

    .footer-contacto-item strong{
        font-size:14px;
    }
    .servicio{

    padding:90px 5%;

}

.servicio-contenedor{

    grid-template-columns:460px 1fr;

    gap:50px;

}

.servicio-contenido span{

    font-size:12px;

    letter-spacing:2px;

}

.servicio-contenido h2{

    font-size:36px;

}

.servicio-contenido p{

    font-size:17px;

    line-height:1.8;

}

.servicio-lista{

    gap:15px;

}

.servicio-lista li{

    font-size:15px;

}
.core-dashboard-demo{
        grid-template-columns:220px 1fr;
    }

    .core-kpis{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
       .core-grafica-chart{
        height:260px;
    }

}
/*CELULARES*/
@media (max-width:992px){

    .header{
        height:78px;
        padding:0 5%;
    }

    .logo img{
        width:155px;
    }

    .menu{
        width:100%;
        padding:25px 5%;

        position:absolute;
        top:78px;
        left:0;

        display:none;
        flex-direction:column;
        align-items:flex-start;
        gap:22px;

        background:rgba(7, 13, 27, 0.98);
        border-top:1px solid rgba(255,255,255,0.08);
        box-shadow:0 20px 30px rgba(0,0,0,0.25);
    }

    .menu.activo{
        display:flex;
    }

    .menu a{
        width:100%;
        font-size:16px;
    }

    .header-btn{
        display:none;
    }

    .menu-toggle{
        display:flex;
    }
     .hero{
        min-height:auto;
        padding:135px 6% 80px;

        grid-template-columns:1fr;
        gap:55px;
        text-align:center;
    }

    .hero-contenido{
        max-width:780px;
        margin:0 auto;
    }

    .hero p{
        margin-left:auto;
        margin-right:auto;
    }

    .hero-botones{
        justify-content:center;
    }

    .hero-imagen img{
        max-width:650px;
    }
    .servicios{
    padding:95px 6%;
}

.servicios-grid{
    gap:28px;
}

.servicio-card{
    padding:32px;
}

.servicio-card img{
    height:220px;
}

.servicio-card h3{
    font-size:25px;
}
.consultoria{

    padding:80px 6%;

}

.consultoria-contenedor{

    grid-template-columns:1fr;

    gap:45px;

}

.consultoria-imagen{

    order:1;

    display:flex;

    justify-content:center;

}

.consultoria-imagen img{

    width:100%;

    max-width:650px;

    margin:0 auto;

}

.consultoria-info{

    order:2;

    text-align:center;

}

.consultoria-info h2{

    font-size:40px;

}

.consultoria-info p{

    font-size:17px;

}

.consultoria-lista{

    max-width:500px;

    margin:0 auto 35px;

}

.consultoria-lista li{

    text-align:left;

}

.consultoria-botones{

    justify-content:center;

}

.core{
    padding:95px 6%;
}

.core-contenedor{
    grid-template-columns:1fr;
    gap:55px;
}

.core-info{
    max-width:760px;
    margin:0 auto;
    text-align:center;
}

.core-info > p{
    margin-left:auto;
    margin-right:auto;
}

.core-modulos{
    max-width:650px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:38px;
}

.core-imagen img{
    max-width:760px;
}
.contacto{

    padding:90px 6%;

}

.contacto-contenedor{

    grid-template-columns:1fr;

    gap:55px;

}

.contacto-info{

    text-align:center;

}

.contacto-datos{

    max-width:650px;

    margin:0 auto;

}
.footer-social{

    justify-content:flex-start;

    gap:15px;

}

.footer-social a{

    width:50px;
    height:50px;

}

.footer-social img{

    width:44px;
    height:44px;

}
.footer-contacto{
        width:100%;
        max-width:360px;
    }

    .footer-contacto-lista{
        gap:18px;
    }

    .footer-contacto-item{
        width:100%;
        justify-content:flex-start;
    }

    .footer-contacto-item > div:last-child{
        min-width:0;
    }

    .footer-contacto-item strong{
        overflow-wrap:anywhere;
    }
    .servicio{

    padding:80px 6%;

}

.servicio-contenedor{

    grid-template-columns:1fr;

    gap:45px;

}

.servicio-imagen{

    max-width:650px;

    margin:0 auto;

}

.servicio-contenido{

    text-align:center;

}

.servicio-lista{

    grid-template-columns:1fr;

    max-width:500px;

    margin:0 auto;

}
.core-dashboard-seccion{
        padding:90px 4%;
    }

    .core-dashboard-demo{
        min-height:auto;
        grid-template-columns:190px 1fr;
    }

    .core-sidebar{
        padding:20px 12px;
    }

    .core-menu-item{
        padding:0 10px;
        font-size:12px;
    }

    .core-dashboard-contenido{
        padding:20px;
    }

    .core-dashboard-grid{
        grid-template-columns:1fr;
    }

    .core-panel-insight{
        grid-column:auto;
    }


}
@media (max-width:768px){
.hero{
        padding:120px 5% 65px;
        gap:42px;
    }

    .hero-contenido > span{
        margin-bottom:18px;
        padding:8px 13px;
        font-size:11px;
        letter-spacing:1.7px;
    }

    .hero h1{
        margin-bottom:20px;
        font-size:clamp(40px, 10vw, 56px);
        line-height:1.08;
        letter-spacing:-1.5px;
    }

    .hero p{
        margin-bottom:28px;
        font-size:17px;
        line-height:1.65;
    }

    .hero-imagen img{
        max-width:540px;
    }
    .clientes{

    padding:80px 6%;

}

.clientes h2{

    font-size:32px;

}

.cliente-card{

    grid-template-columns:1fr;

    text-align:center;

    padding:35px 25px;

}

.cliente-logo{

    margin-bottom:30px;

}

.cliente-logo img{

    width:150px;

}

.cliente-info{

    text-align:center;

}

.cliente-info h3{

    font-size:28px;

}

.cliente-tags{

    justify-content:center;

}
.servicios{
    padding:80px 6%;
}

.servicios .seccion-titulo{
    margin-bottom:50px;
}

.servicios .seccion-titulo span{
    font-size:12px;
    letter-spacing:2.4px;
}

.servicios .seccion-titulo h2{
    font-size:34px;
}

.servicios .seccion-titulo p{
    font-size:16px;
}

.servicios-grid{
    grid-template-columns:1fr;
    gap:25px;
}

.servicio-card{
    padding:30px;
}

.servicio-card img{
    height:280px;
}

.servicio-card h3{
    font-size:25px;
}
.consultoria{

    padding:80px 6%;

}

.consultoria-info h2{

    font-size:34px;

}

.consultoria-info p{

    font-size:16px;

}

.consultoria-contenedor{
        grid-template-columns:1fr;
        gap:45px;
    }

    .consultoria-info{
        text-align:center;
    }

    .consultoria-lista{
        max-width:500px;
        margin:0 auto 40px;
        text-align:left;
    }

    .consultoria-imagen{
        width:100%;
        justify-content:center;
        margin:0 auto;
    }

    .consultoria-imagen img{
        width:100%;
        max-width:620px;
        margin:0 auto;
    }

.core{
    padding:80px 6%;
}

.core-contenedor{
    gap:42px;
}

.core-info > span{
    font-size:11px;
    letter-spacing:1.8px;
}

.core-info h2{
    font-size:38px;
    letter-spacing:-1px;
}

.core-info > p{
    font-size:16px;
    line-height:1.7;
}

.core-modulos{
    gap:10px;
}

.core-modulos div{
    font-size:13px;
}

.core-imagen img{
    max-width:600px;
    border-radius:18px;
}
.contacto{

    padding:80px 6%;

}

.contacto-info h2{

    font-size:40px;

}

.contacto-formulario{

    padding:30px;

}

.form-grid{

    grid-template-columns:1fr;

}
.footer{

    padding:70px 6% 0;

}

.footer-contenedor{

    grid-template-columns:1fr;

    gap:45px;

}

.footer-brand{

    text-align:center;

}

.footer-brand p{

    margin-left:auto;
    margin-right:auto;

}

.footer-social{

    justify-content:center;

    gap:16px;

}

.footer-social a{

    width:48px;
    height:48px;

}

.footer-social img{

    width:42px;
    height:42px;

}

.footer-links,
.footer-contacto{

    text-align:center;

}

.footer-links a:hover{

    padding-left:0;

}
    .footer-contacto{

        width:100%;
        max-width:380px;

        margin:0 auto;

    }

    .footer-contacto h3{

        text-align:center;

    }

    .footer-contacto-lista{

        display:flex;
        flex-direction:column;

        align-items:center;

        gap:18px;

    }

    .footer-contacto-item{

        width:100%;
        max-width:320px;

        justify-content:center;

        text-align:left;

    }


    .footer-contacto-icono{
        width:42px;
        height:42px;

        flex:0 0 42px;
    }

    .footer-contacto-icono img{
        width:38px;
        height:38px;
    }

    .footer-contacto-item span{
        font-size:11px;
    }

    .footer-contacto-item strong{
        font-size:14px;
    }

.servicio{

    padding:70px 5%;

}

.servicio-contenido h2{

    font-size:34px;

}

.servicio-contenido p{

    font-size:17px;

}
.core-ia-overlay{

        padding:18px;

    }


    .core-ia-modal{

        height:calc(100vh - 36px);

        border-radius:22px;

    }


    .core-ia-header{

        min-height:78px;

        padding:15px 18px;

    }


    .core-ia-logo{

        width:46px;
        height:46px;

        border-radius:14px;

    }


    .core-ia-logo img{

        width:30px;
        height:30px;

    }


    .core-ia-identidad strong{

        font-size:16px;

    }


    .core-ia-identidad span{

        font-size:12px;

    }


    .core-ia-body{

        padding:22px 18px;

    }


    .core-burbuja{

        max-width:100%;

    }


    .core-ia-opciones{

        margin-left:0;

        grid-template-columns:repeat(2, minmax(0, 1fr));

    }


    .core-ia-form{

        padding:15px;

    }
    .core-dashboard-seccion{
        padding:75px 20px;
    }

    .core-dashboard-demo{
        display:block;
        border-radius:22px;
    }

    .core-sidebar{
        padding:16px;

        display:block;

        border-right:none;
        border-bottom:1px solid rgba(255, 255, 255, 0.07);
    }

    .core-sidebar-logo{
        padding-bottom:16px;
    }

    .core-sidebar-menu{
        margin-top:15px;

        display:grid;
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap:8px;
    }

    .core-menu-item{
        min-height:58px;
        padding:8px;

        flex-direction:column;
        justify-content:center;
        gap:5px;

        text-align:center;
        font-size:10px;
    }

    .core-menu-item:hover{
        transform:translateY(-2px);
    }

    .core-sidebar-ia,
    .core-sidebar-usuario{
        display:none;
    }

    .core-dashboard-header{
        align-items:flex-start;
    }

    .core-dashboard-perfil{
        display:none;
    }

    .core-kpis{
        grid-template-columns:1fr 1fr;
    }

    .core-dashboard-grid{
        grid-template-columns:1fr;
    }

    .core-accesos-rapidos{
        align-items:flex-start;
        flex-direction:column;
    }

    .core-accesos-lista{
        justify-content:flex-start;
    }
    .core-grafica-chart{
        height:250px;
    }

}
@media (max-width:480px){

    .hero{
        padding:110px 20px 55px;
    }

    .hero h1{
        font-size:39px;
        letter-spacing:-1px;
    }

    .hero p{
        font-size:16px;
    }

    .hero-botones{
        width:100%;
        flex-direction:column;
    }

    .btn-primary,
    .btn-secondary{
        width:100%;
        min-height:50px;
    }

    .hero-imagen img{
        width:115%;
        max-width:none;
    }
    .servicios{
    padding:65px 20px;
}

.servicios .seccion-titulo{
    margin-bottom:38px;
}

.servicios .seccion-titulo span{
    margin-bottom:14px;
    font-size:11px;
    letter-spacing:2px;
}

.servicios .seccion-titulo h2{
    margin-bottom:16px;
    font-size:29px;
    line-height:1.25;
}

.servicios .seccion-titulo p{
    font-size:15px;
    line-height:1.7;
}

.servicios-grid{
    gap:22px;
}

.servicio-card{
    padding:22px;
    border-radius:20px;
}

.servicio-card img{
    height:210px;
    margin-bottom:24px;
    border-radius:13px;
}

.servicio-card h3{
    margin-bottom:14px;
    font-size:23px;
}

.servicio-card p{
    margin-bottom:24px;
    font-size:15px;
    line-height:1.7;
}

.servicio-card a{
    font-size:14px;
}
.consultoria{

    padding:65px 20px;

}

.consultoria-info span{

    font-size:11px;

}

.consultoria-info h2{

    font-size:28px;

}

.consultoria-info p{

    font-size:15px;

}

.consultoria-lista li{

    font-size:15px;

}

.consultoria-botones{

    flex-direction:column;

}

.consultoria-botones a{

    width:100%;

}
.core{
    padding:65px 20px;
}

.core-info h2{
    font-size:31px;
}

.core-info > p{
    font-size:15px;
}

.core-modulos{
    grid-template-columns:1fr;
}

.core-modulos div{
    justify-content:center;
    text-align:center;
}

.core-btn{
    width:100%;
}

.core-imagen img{
    border-radius:15px;
}
.contacto{

    padding:65px 20px;

}

.contacto-info h2{

    font-size:31px;

}

.contacto-info p{

    font-size:16px;

}

.contacto-dato{

    gap:15px;
    padding:17px;

}

.contacto-icono{

    width:48px;
    height:48px;

}

.contacto-icono img{

    width:43px;
    height:43px;

}

.contacto-dato strong{

    font-size:16px;

}

.contacto-formulario{

    padding:22px;

}
.footer{

    padding:60px 20px 0;

}

.footer-brand img{

    width:150px;

}

.footer-links h3,
.footer-contacto h3{

    font-size:18px;

}

.footer-brand p{

    font-size:15px;

}

.footer-bottom{

    margin-top:50px;

}

.footer-bottom p{

    font-size:13px;

}
.footer-social{

    gap:14px;

}

.footer-social a{

    width:42px;
    height:42px;

}

.footer-social img{

    width:36px;
    height:36px;

}
.footer-contacto{
        max-width:330px;
        margin:0 auto;
    }

    .footer-contacto h3{
        margin-bottom:20px;
    }

    .footer-contacto-lista{
        align-items:center;
    }

    .footer-contacto-item{
        width:100%;
        max-width:290px;

        justify-content:center;

        gap:12px;
    }

    .footer-contacto-icono{
        width:38px;
        height:38px;

        flex:0 0 38px;
    }

    .footer-contacto-icono img{
        width:34px;
        height:34px;
    }

    .footer-contacto-item span{
        margin-bottom:3px;

        font-size:10px;
        letter-spacing:.8px;
    }

    .footer-contacto-item strong{
        font-size:13px;
        line-height:1.4;
    }
    .footer-contacto-item > div:last-child{

        width:190px;

    }
    .servicio{

    padding:60px 20px;

}

.servicio-contenido span{

    font-size:12px;

    letter-spacing:2px;

}

.servicio-contenido h2{

    font-size:28px;

}

.servicio-contenido p{

    font-size:16px;

    line-height:1.8;

}

.servicio-lista li{

    font-size:15px;

}
.core-ia-overlay{

        padding:0;

    }


    .core-ia-modal{

        width:100%;
        height:100%;

        border:none;
        border-radius:0;

    }


    .core-ia-header{

        min-height:74px;

        padding:13px 15px;

    }


    .core-ia-identidad{

        gap:10px;

    }


    .core-ia-logo{

        width:43px;
        height:43px;

    }


    .core-ia-identidad strong{

        font-size:15px;

    }


    .core-ia-identidad span{

        max-width:190px;

        font-size:11px;

        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;

    }


    .core-ia-cerrar{

        width:40px;
        height:40px;

        border-radius:12px;

        font-size:26px;

    }


    .core-ia-body{

        padding:18px 14px 22px;

    }


    .core-mensaje{

        gap:10px;

    }


    .core-avatar{

        width:38px;
        height:38px;

        border-radius:12px;

        font-size:11px;

    }


    .core-burbuja{

        padding:15px 16px;

        border-radius:6px 17px 17px 17px;

    }


    .core-burbuja strong{

        font-size:15px;

    }


    .core-burbuja p{

        font-size:14px;
        line-height:1.55;

    }


    .core-ia-opciones{

        gap:9px;

    }


    .core-opcion{

        min-height:68px;

        padding:12px 10px;

        border-radius:14px;

        font-size:12px;

    }


    .core-opcion span{

        font-size:19px;

    }


    .core-ia-form{

        grid-template-columns:1fr auto;

        gap:8px;

        padding:12px;

    }


    .core-ia-form input{

        height:48px;

        padding:0 14px;

        border-radius:13px;

        font-size:14px;

    }


    .core-ia-form button{

        min-width:52px;
        width:52px;
        height:48px;

        padding:0;

        border-radius:13px;

    }


    .core-ia-form button span:first-child{

        display:none;

    }


    .core-ia-form button span:last-child{

        font-size:20px;

    }
     .core-dashboard-seccion{
        padding:65px 14px;
    }

    .core-dashboard-encabezado{
        margin-bottom:35px;
    }

    .core-dashboard-encabezado > span{
        font-size:11px;
        letter-spacing:1.8px;
    }

    .core-dashboard-encabezado h2{
        font-size:34px;
    }

    .core-dashboard-encabezado p{
        font-size:15px;
    }

    .core-dashboard-demo{
        border-radius:18px;
    }

    .core-sidebar-menu{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .core-dashboard-contenido{
        padding:14px;
    }

    .core-dashboard-header h3{
        font-size:19px;
    }

    .core-dashboard-acciones > button{
        width:38px;
        height:38px;
    }

    .core-kpis{
        grid-template-columns:1fr;
    }

    .core-kpi-card > strong{
        font-size:22px;
    }

    .core-panel{
        padding:16px;
    }

    .core-grafica-pl

    .core-donut-leyenda{
        grid-template-columns:1fr;
    }

    .core-panel-insight{
        align-items:flex-start;
        flex-direction:column;
    }

    .core-accesos-lista{
        width:100%;
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .core-accesos-lista button{
        justify-content:center;
    }
        .core-grafica-chart{
        height:225px;
        padding-top:5px;
    }

}
@media (max-width:390px){

    .hero{
        padding-left:16px;
        padding-right:16px;
    }

    .hero h1{
        font-size:35px;
    }

    .hero p{
        font-size:15px;
    }
    .servicios{
    padding-left:16px;
    padding-right:16px;
}

.servicios .seccion-titulo h2{
    font-size:27px;
}

.servicio-card{
    padding:18px;
}

.servicio-card img{
    height:185px;
}

.servicio-card h3{
    font-size:22px;
}
.core{
    padding-left:16px;
    padding-right:16px;
}

.core-info h2{
    font-size:28px;
}

.core-info > span{
    font-size:10px;
}

.core-modulos div{
    min-height:45px;
}
.contacto-dato{

    gap:13px;
    padding:15px;

}

.contacto-icono{

    width:44px;
    height:44px;

}

.contacto-icono img{

    width:39px;
    height:39px;

}
.footer-social{

    gap:12px;

}

.footer-social a{

    width:38px;
    height:38px;

}

.footer-social img{

    width:32px;
    height:32px;

}
.footer-contacto{
        max-width:290px;
    }

    .footer-contacto-lista{
        gap:15px;
    }

    .footer-contacto-item{
        max-width:260px;
        gap:10px;
    }

    .footer-contacto-icono{
        width:34px;
        height:34px;

        flex:0 0 34px;
    }

    .footer-contacto-icono img{
        width:30px;
        height:30px;
    }

    .footer-contacto-item span{
        font-size:9px;
    }

    .footer-contacto-item strong{
        font-size:12px;
    }
        .core-ia-identidad span{

        max-width:150px;

    }


    .core-ia-opciones{

        grid-template-columns:1fr 1fr;

    }


    .core-opcion{

        min-height:64px;

        font-size:11px;

    }
    .core-dashboard-header{
        flex-direction:column;
    }

    .core-dashboard-acciones{
        width:100%;
        justify-content:flex-end;
    }

    .core-sidebar-menu{
        grid-template-columns:1fr 1fr;
    }

    .core-accesos-lista{
        grid-template-columns:1fr;
    }
    .core-grafica-chart{
        height:210px;
    }

}
.menu a.activo{
    color:#2A7BFF;
}