 
    html { scroll-behavior: smooth; }
    
    
    #loading-screen {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: #111827; 
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      z-index: 9999;
      transition: opacity 0.5s ease-out, visibility 0.5s ease-out;
    }
    
    .loading-logo {
      width: 120px;
      margin-bottom: 2rem;
      animation: pulse 2s infinite;
    }
    
    .loading-bar-container {
      width: 300px;
      height: 4px;
      background-color: rgba(255, 255, 255, 0.1);
      border-radius: 4px;
      overflow: hidden;
    }
    
    .loading-bar {
      height: 100%;
      width: 0%;
      background: linear-gradient(90deg, #3b82f6, #60a5fa, #3b82f6);
      border-radius: 4px;
      transition: width 0.3s ease;
      position: relative;
    }
    
    .loading-bar::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
      animation: shimmer 1.5s infinite;
    }
    
    .loading-text {
      margin-top: 1rem;
      color: #9ca3af;  
      font-size: 0.875rem;
    }
    
    @keyframes pulse {
      0% { transform: scale(1); opacity: 1; }
      50% { transform: scale(1.05); opacity: 0.8; }
      100% { transform: scale(1); opacity: 1; }
    }
    
    @keyframes shimmer {
      0% { transform: translateX(-100%); }
      100% { transform: translateX(100%); }
    }
    
    
    @keyframes logoEntrance {
      0% {
        transform: scale(0.1) rotate(-30deg);
        opacity: 0;
      }
      70% {
        transform: scale(1.1) rotate(5deg);
        opacity: 0.9;
      }
      100% {
        transform: scale(1) rotate(0deg);
        opacity: 1;
      }
    }
    
    /* Efecto de brillo sutil después de la animación */
    @keyframes logoGlow {
      0%, 100% {
        filter: drop-shadow(0 0 5px rgba(59, 130, 246, 0.5));
      }
      50% {
        filter: drop-shadow(0 0 15px rgba(59, 130, 246, 0.8));
      }
    }
    
    .logo-animated {
      animation: logoEntrance 1.2s cubic-bezier(0.34, 1.56, 0.64, 1) forwards,
                 logoGlow 3s ease-in-out 1.5s infinite;
    }
    
    #cyber-world {
      background: rgba(0,0,0,0.1);
    }
    
    /* Ocultar contenido hasta que termine la carga */
    body:not(.loaded) #main-content {
      opacity: 0;
      visibility: hidden;
    }
    
    body.loaded #main-content {
      opacity: 1;
      visibility: visible;
      transition: opacity 0.5s ease;
    }
      /* Estilos adicionales para la sección de captura */
    .screenshot-container {
      position: relative;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
      transition: all 0.3s ease;
    }
    
    .screenshot-container:hover {
      transform: translateY(-5px);
      box-shadow: 0 35px 60px -12px rgba(0, 0, 0, 0.6);
    }
    
    .screenshot-frame {
      position: relative;
      padding: 12px;
      background: linear-gradient(135deg, #1e293b, #334155);
      border-radius: 12px;
    }
    
    .screenshot-header {
      display: flex;
      align-items: center;
      padding: 8px 12px;
      background: #0f172a;
      border-radius: 8px 8px 0 0;
    }
    
    .screenshot-dots {
      display: flex;
      gap: 6px;
    }
    
    .screenshot-dot {
      width: 12px;
      height: 12px;
      border-radius: 50%;
    }
    
    .screenshot-dot.red {
      background: #ef4444;
    }
    
    .screenshot-dot.yellow {
      background: #eab308;
    }
    
    .screenshot-dot.green {
      background: #22c55e;
    }
    
    .screenshot-image {
      width: 100%;
      border-radius: 0 0 8px 8px;
      display: block;
    }
    
    .feature-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 1.5rem;
    }
    
    .feature-item {
      display: flex;
      align-items: flex-start;
      gap: 0.75rem;
    }
    
    .feature-icon {
      flex-shrink: 0;
      width: 24px;
      height: 24px;
      color: #3b82f6;
    }