
        :root {
            --primary-color: #000000;
            --accent-color: #007bff;
            --text-light: #ffffff;
            --bg-gradient: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
            --shadow: 0 8px 30px rgba(0,0,0,0.1);
            --transition: all 0.3s ease;
        }

        * { margin: 0; padding: 0; box-sizing: border-box; }

        body {
            font-family: 'Montserrat', sans-serif;
            background: var(--bg-gradient);
            color: #333;
            line-height: 1.6;
        }

        /* --- NAVEGACIÓN MODERNA --- */
        header {
            background: #f0f0f0; /* Gris claro sólido, no blanco */
            border-bottom: 2px solid #0f76a0; /* Línea de base azul para separar del cuerpo */
            position: sticky;
            top: 0;
            z-index: 1000;
            box-shadow: 0 4px 10px rgba(0,0,0,0.1);
            padding: 10px 5%;
        }

        .nav-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
        }

        .logo img {
            max-height: 80px;
            transition: var(--transition);
        }

        .logo img:hover { transform: scale(1.05); }

        .social-icons {
            display: flex;
            gap: 15px;
        }

        .social-icons img {
            width: 30px;
            height: 30px;
            transition: var(--transition);
        }

        

        .social-icons img:hover { transform: translateY(-3px); }
        
        .main-menu {
            width: 100%;
            margin-top: 15px;
        }

        .cont-ul {
            list-style: none;
            display: flex;
            justify-content: center;
            gap: 10px;
            flex-wrap: wrap;
        }

        .liprincipal {
            padding: 10px 15px;
            font-weight: 700; /* Más grueso para que se vea */
            cursor: pointer;
            border-radius: 8px;
            transition: var(--transition);
            font-size: 13px;
            text-transform: uppercase;
            color: #0f76a0; /* Azul oscuro */
            /* Efecto 3D: Gradiente + Sombra externa + Sombra interna */
            background: linear-gradient(145deg, #ffffff, #d1d1d1);
            box-shadow: 4px 4px 8px #b1b1b1, 
                        -4px -4px 8px #ffffff;
            border: 1px solid #ccc;
        }

        .liprincipal:active {
            transform: translateY(1px);
            box-shadow:
                inset 0 4px 8px rgba(0,0,0,0.3);
}


        .cont-ul a { text-decoration: none; color: inherit; }

        .activado {
            background: linear-gradient(145deg, #004e6b, #0f76a0) !important;
            color: white !important;
            box-shadow: inset 2px 2px 5px rgba(0,0,0,0.5); /* Hundido */
        }

        .liprincipal:hover {
            /* Video Inverso en 3D: Se "hunde" o resalta en azul */
            background: #0f76a0;
            color: white !important;
            transform: translateY(-2px);
            box-shadow: 0 8px 15px rgba(15, 118, 160, 0.4);
        }

        .develop { position: relative; }
        .ul-second {
            display: none;
            position: absolute;
            top: 100%;
            left: 0;
            background: white;
            min-width: 220px;
            box-shadow: var(--shadow);
            border-radius: 8px;
            padding: 10px 0;
            list-style: none;
        }

        .develop:hover > .ul-second,
        .ul-second:hover {
            display: block;
        }

        .ul-second {
                margin-top: 0;
            }


        .develop:hover > .ul-second { display: block; }

        .front {
            padding: 12px 20px;
            color: #ffffff !important; /* Letra blanca obligatoria */
            background: transparent;
            border-bottom: 1px solid #222;
            transition: all 0.3s ease;
        }

        .front:hover { 
            /* Efecto Hover 3D en el submenú */
            background: #0f76a0 !important;
            color: #fff !important;
            transform: none; /* Quitamos scale y translateX */
            box-shadow: 5px 5px 15px rgba(0,0,0,0.3);

                }

        .ul-third, .ul-cuarto, .ul-quinto, .ul-sexto, .ul-septimo, .ul-octavo {
            display: none;
            position: absolute;
            left: 100%;
            top: 0;
            background: rgb(51, 137, 235);
            min-width: 200px;
            box-shadow: var(--shadow);
            border-radius: 8px;
        }

        .front:hover > ul { display: block; }

        .ul-third li:hover,
        .ul-cuarto li:hover,
        .ul-quinto li:hover,
        .ul-sexto li:hover,
        .ul-septimo li:hover 
        
                {            
                    background: #000000;
                    color: #28b6ee;
                }

        .front ul li {
            background: linear-gradient(145deg, #2a2a2a, #1f1f1f);
            margin: 5px;
            border-radius: 6px;
            box-shadow:
                0 3px 6px rgba(0,0,0,0.2);
            }  
            
        .front ul li:hover {
                background: linear-gradient(145deg, #28b6ee, #333);
                color: white;
                transform: translateX(4px);
            }





/*actualizado hasta aqui */



        .ul-second,
        .ul-third,
        .ul-cuarto,
        .ul-quinto,
        .ul-sexto,
        .ul-septimo,
        .ul-octavo 
                {
                    display: none;
                    position: absolute;
                    background: #1a1a1a !important; /* Fondo oscuro permanente */
                    min-width: 220px;
                    border-radius: 12px;
                    padding: 10px 0;
                    list-style: none;
                    border: 1px solid #333;
                    /* Efecto 3D de profundidad */
                    box-shadow: 10px 10px 30px rgba(0,0,0,0.6), 
                inset 1px 1px 1px rgba(255,255,255,0.1);
                }  
                
        .ul-second a, 
        .ul-third a, 
        .ul-cuarto a, 
        .ul-quinto a, 
        .ul-sexto a, 
        .ul-septimo a {
            color: #ffffff !important; 
            text-decoration: none;
            display: block;
            width: 100%;
        }

        /* Estilo para los items de la última subventana */
        .ul-third li, .ul-cuarto li, .ul-quinto li, .ul-sexto li, .ul-septimo li {
            padding: 10px 20px;
            transition: all 0.3s ease;
        }
         
        * Cuando te paras sobre una opción del submenú final */
        .ul-third li:hover, 
        .ul-cuarto li:hover, 
        .ul-quinto li:hover, 
        .ul-sexto li:hover, 
        .ul-septimo li:hover {
            background: #007bff !important; /* Azul intenso */
            color: #ffffff !important;
            transform: translateX(5px); /* Efecto de desplazamiento 3D */
            box-shadow: -3px 0 0 #00d4ff; /* Línea de luz lateral */
        }



        /* --- ESTILO DEL BANNER --- */
        .banner-container {
            max-width: 650px;
            margin: 20px auto;
            border-radius: 20px;
            overflow: hidden;           
            box-shadow: 0 20px 40px rgba(0,0,0,0.2);
            position: relative;
            background: #fff;
        }


        /* Flechas Modernas: Círculo blanco que cambia a azul */
            .carousel-control {
                width: 8%;
                background-image: none !important; /* Elimina la sombra negra vieja de Bootstrap */
                display: flex;
                align-items: center;
                justify-content: center;
                opacity: 0.8;
            }

            .carousel-control:hover {
                opacity: 1;
            }

            /* El círculo con el icono */
            .carousel-control .glyphicon {
                background: #ffffff;      /* Fondo blanco inicial */
                color: #333;             /* Flecha oscura */
                width: 45px;
                height: 45px;
                line-height: 45px;       /* Centra el icono verticalmente */
                border-radius: 50%;      /* Hace el círculo */
                font-size: 18px;
                box-shadow: 0 4px 12px rgba(0,0,0,0.2);
                transition: all 0.3s ease;
                top: auto;               /* Corrige posición de Bootstrap */
                margin-top: 0;           /* Corrige posición de Bootstrap */
            }

            /* Efecto al pasar el mouse: Cambia a azul */
            .carousel-control:hover .glyphicon {
                background: #007bff;     /* El azul que te gustó */
                color: #ffffff;          /* Flecha blanca */
                transform: scale(1.1);   /* Crece un poquito */
            }
        

        .carousel-inner img {
            width: 100%;
            height: auto;
            object-fit: cover;
            cursor: zoom-in; /* Indica que se puede ampliar */
        }


/* Estilo para los circulitos indicadores */
.carousel-indicators {
    bottom: 10px; /* Separación del borde inferior */
}

.carousel-indicators li {
    border: 1px solid #007bff; /* Borde azul */
    background-color: rgba(255, 255, 255, 0.5);
    width: 12px;
    height: 12px;
    margin: 0 5px;
}

.carousel-indicators .active {
    width: 14px;
    height: 14px;
    background-color: #007bff; /* Azul cuando está activo */
    margin: 0 5px;
}


        /* --- MODAL PARA IMAGEN GRANDE --- */
        #imgModal {
            display: none;
            position: fixed;
            z-index: 2000;
            padding-top: 50px;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0,0,0,0.9);
        }

        .modal-content {
            margin: auto;
            display: block;
            max-width: 80%;
            max-height: 80vh;
            border-radius: 10px;
            animation: zoom 0.3s;
        }

        @keyframes zoom {
            from {transform:scale(0)} 
            to {transform:scale(1)}
        }

        .close-modal {
            position: absolute;
            top: 20px;
            right: 35px;
            color: #f1f1f1;
            font-size: 40px;
            font-weight: bold;
            cursor: pointer;
        }

        /* --- SECCIÓN DESCARGAS --- */
        .descargas-section {
            max-width: 1000px;
            margin: 50px auto;
            padding: 0 20px;
        }

        .textodescargas {
            text-align: center;
            margin-bottom: 30px;
        }

        .textodescargas h1 {
            font-size: 2.5rem;
            color: var(--primary-color);
            margin-bottom: 10px;
        }

        .accordion-item {
            background: white;
            margin-bottom: 10px;
            border-radius: 12px;
            overflow: hidden;
            box-shadow: 0 4px 15px rgba(0,0,0,0.05);
        }

        .accordion-header {
            padding: 20px;
            background: var(--primary-color);
            color: white;
            cursor: pointer;
            font-weight: bold;
            display: flex;
            justify-content: space-between;
        }

        .accordion-content {
            display: none;
            grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
            gap: 15px;
            padding: 20px;
            background: #fdfdfd;
        }

        .banner_item, .banner_item2 {
            background: white;
            border: 1px solid #e0e0e0;
            padding: 15px;
            border-radius: 10px;
            text-align: center;
            transition: var(--transition);
        }

        .banner_item:hover, .banner_item2:hover {
            transform: translateY(-5px);
            border-color: var(--accent-color);
            box-shadow: 0 10px 20px rgba(0,0,0,0.1);
        }

        .banner_item a, .banner_item2 a {
            text-decoration: none;
            color: #333;
            font-weight: 600;
            font-size: 14px;
        }


.testimonios-section {
    padding: 60px 5%;
    background: #fff;
    text-align: center;
}
.testimonio-card {
    background: #f8f9fa;
    padding: 30px;
    border-radius: 15px;
    margin: 15px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}
.testimonio-card p { font-style: italic; }
.testimonio-card h4 { color: var(--accent-color); font-weight: 700; margin-top: 15px; }




        /* --- FOOTER --- */
        footer {
            background: var(--primary-color);
            color: white;
            padding: 50px 5% 20px;
            margin-top: 50px;
        }

        .footer-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 40px;
            max-width: 1200px;
            margin: 0 auto;
        }

        .footer-socials img {
            width: 35px;
            
            margin-right: 15px;
        }

        .footer-links ul { list-style: none; }
        .footer-links li { margin-bottom: 10px; }
        .footer-links a { color: #ccc; text-decoration: none; transition: var(--transition); }
        .footer-links a:hover { color: white; padding-left: 5px; }

        .btn-registro {
            display: inline-block;
            background: var(--accent-color);
            color: white !important;
            padding: 10px 25px;
            border-radius: 50px;
            margin-top: 10px;
            font-weight: bold;
            text-decoration: none;
        }

        /* Botón flotante de WhatsApp */
.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 30px; /* Distancia desde abajo */
    right: 30px;  /* Distancia desde la derecha */
    background-color: #25d366;
    color: #FFF;
    border-radius: 50px;
    text-align: center;
    font-size: 35px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.3);
    z-index: 2000; /* Para que esté por encima de todo */
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    transition: all 0.3s ease;
}

.whatsapp-float:hover {
    transform: scale(1.1);
    background-color: #128c7e;
    color: white;
}

        /* --- ADAPTACIÓN PROFESIONAL PARA MÓVILES --- */
@media (max-width: 768px) {
    header {
        padding: 10px 2%;
        position: static !important; /* El !important asegura que gane al sticky que tienes arriba */
        max-height: none;
        background: rgba(255, 255, 255, 1); /* Aseguramos que no sea transparente en móvil */
    }

    .nav-container {
        flex-direction: column;
        align-items: center;
    }

    .social-icons {
        margin: 10px 0;
        justify-content: center;
    }

    .main-menu {
        width: 100%;
        margin-top: 10px;
        max-height: none; /* Dejamos que crezca según los cursos que abras */
    }

    .cont-ul {
        flex-direction: column;
        width: 100%;
    }

    .liprincipal {
        width: 100%;
        text-align: center;
        padding: 12px;
        border-bottom: 1px solid rgba(0,0,0,0.05);
        font-size: 14px;
    }

    /* Esto es clave: para que los submenús no floten y se vea todo */
    .ul-second, .ul-third, .ul-cuarto {
        position: static !important;
        display: none; 
        width: 100% !important;
        box-shadow: none !important;
    }

    /* Cuando el usuario toque "CURSOS", se despliega hacia abajo */
    .develop:hover > .ul-second {
        display: block !important;
    }
    
    .front:hover > ul {
        display: block !important;
    }

    .front {
        padding: 10px;
        text-align: center;
    }
}



    