﻿/* Efectos visuales personalizados */
        body {
            background-color: #050B14;
            color: #ffffff;
            overflow-x: hidden;
        }

        #canvas-container {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            z-index: -1;
        }

        .glass-panel {
            background: rgba(10, 15, 30, 0.6);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(0, 240, 255, 0.2);
            box-shadow: 0 4px 30px rgba(0, 0, 0, 0.5);
        }

        .text-glow-blue {
            text-shadow: 0 0 10px rgba(0, 240, 255, 0.7), 0 0 20px rgba(0, 240, 255, 0.5);
        }

        .text-glow-pink {
            text-shadow: 0 0 10px rgba(255, 0, 60, 0.7), 0 0 20px rgba(255, 0, 60, 0.5);
        }

        .neon-border-glow:hover {
            box-shadow: 0 0 15px rgba(0, 240, 255, 0.6);
            border-color: rgba(0, 240, 255, 1);
            transition: all 0.3s ease;
        }

        /* Línea de tiempo */
        .timeline-item::before {
            content: '';
            position: absolute;
            left: -33px;
            top: 6px;
            width: 16px;
            height: 16px;
            border-radius: 50%;
            background: #00F0FF;
            box-shadow: 0 0 10px #00F0FF;
            z-index: 10;
        }

        /* Animaciones de aparición */
        .fade-in-up {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.8s ease-out, transform 0.8s ease-out;
        }
        .fade-in-up.visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* Glitch Text Effect para mayor "Clase Tecnológica" */
        .glitch-wrapper {
            position: relative;
        }
        .glitch-text::before, .glitch-text::after {
            content: attr(data-text);
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: 0.8;
            pointer-events: none;
        }
        .glitch-text::before {
            color: #00F0FF;
            z-index: -1;
            transform: translate(-2px, 2px);
            animation: glitch-anim 3s infinite alternate-reverse;
        }
        .glitch-text::after {
            color: #FF003C;
            z-index: -2;
            transform: translate(2px, -2px);
            animation: glitch-anim 2.5s infinite alternate-reverse;
        }
        @keyframes glitch-anim {
            0% { clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%); }
            20% { clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%); }
            40% { clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%); }
            60% { clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%); }
            80% { clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%); }
            100% { clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%); }
        }

        /* Destello de luz (Lens Flare) imitando al cartel */
        .lens-flare {
            position: absolute;
            width: 120px;
            height: 120px;
            background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(0,240,255,0.8) 20%, rgba(0,240,255,0) 70%);
            border-radius: 50%;
            box-shadow: 0 0 60px 30px rgba(0, 240, 255, 0.5);
            animation: pulse-flare 3s infinite alternate;
            z-index: 15;
            pointer-events: none;
        }
        @keyframes pulse-flare {
            0% { transform: scale(0.9); opacity: 0.7; }
            100% { transform: scale(1.3); opacity: 1; }
        }

        /* Floating animation for the robotic hand */
        @keyframes float {
            0% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(2deg); }
            100% { transform: translateY(0px) rotate(0deg); }
        }
        .animate-float {
            animation: float 6s ease-in-out infinite;
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar {
            width: 8px;
        }
        ::-webkit-scrollbar-track {
            background: #050B14; 
        }
        ::-webkit-scrollbar-thumb {
            background: #7A00FF; 
            border-radius: 4px;
        }
        ::-webkit-scrollbar-thumb:hover {
            background: #FF003C; 
        }
