/* Global styles */
body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    font-family: serif;
    background-color: #000000;
    color: white;
  }
  
  .navbar {
    background: rgba(17, 17, 17, 0.9);
    backdrop-filter: blur(10px);
    padding: 1rem 0;
    z-index: 1000;
  }
  
  .navbar-toggler {
    border: 1px solid rgba(57, 255, 20, 0.3);
    padding: 0.5rem;
    transition: all 0.3s ease;
  }
  
  .navbar-toggler:focus {
    box-shadow: 0 0 15px rgba(57, 255, 20, 0.3);
    outline: none;
  }
  
  .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(57, 255, 20, 0.7)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  }
  
  .nav-link {
    color: white !important;
  }
  
  .hero {
    height: 100vh;
    display: flex;
    align-items: center;
  }
  
  h1 {
    font-size: 2.5rem;
    color: white;
  }
  
  h2 {
    font-size: 3.5rem;
  }
  
  h3 {
    font-size: 1.75rem;
  }
  
  .highlight {
    color: #39FF14;
  }
  
  p {
    font-size: 1.1rem;
  }
  
  /* Social Media Icons */
  .social-icons {
    margin-bottom: 20px;
  }
  
  .social-icon {
    margin-right: 15px;
    color: white;
    font-size: 1.75rem;
    transition: color 0.3s ease;
  }
  
  .social-icon:hover {
    color: #00e0ff;
  }
  
  /* Button */
  .btn-primary {
    background-color: #39FF14;
    border-color: #39FF14;
    box-shadow: 0 5px 15px rgba(57, 255, 20, 0.5);
  }
  
  .btn-primary:hover {
    background-color: #32CD12;
    border-color: #32CD12;
    box-shadow: 0 5px 25px rgba(57, 255, 20, 0.7);
  }
  
  /* Circle Image */
  .image-container {
    position: relative;
  }
  
  .image-circle {
    width: 400px;
    height: 400px;
    background-color: #191A19;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 5px 30px rgba(57, 255, 20, 0.5);
    margin: 0 auto;
    position: relative;
    animation: bounce 2s infinite;
  }
  
  .profile-img {
    width: 360px;
    height: 360px;
    border-radius: 50%;
    object-fit: cover;
    position: absolute;
  }
  
  /* Animación de rebote */
  @keyframes bounce {
    0%, 100% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-20px);
    }
  }
  
  /* Media Query */@media (max-width: 768px) {
    .hero {
      text-align: center;
    }
  
    .image-circle {
      margin-top: 20px;
      width: 250px;
      height: 250px;
    }
  
    .profile-img {
      width: 230px;
      height: 230px;
    }
    
    .image-container {
      display: none;
    }
  }
  
  /* About Me Section Styles */
  .about-me {
    background-color: #000;
    color: #fdfdfd;
    padding: 100px 0;
  }
  
  .about-me h2 {
    font-size: 3rem;
    color: white;
  }
  
  .about-me h3 {
    font-size: 1.75rem;
    margin-bottom: 20px;
  }
  
  .about-me p {
    font-size: 1.1rem;
    margin-bottom: 30px;
  }
  
  .highlight {
    color: #00e0ff;
  }
  
  /* Circle Image */
  .about-image-container {
    position: relative;
  }
  
  .about-image-circle {
    width: 300px;
    height: 300px;
    background-color: transparent;
    border: 6px solid #FFF;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
  }
  
  .profile-img-a {
    width: 250px;
    height: 250px;
    border-radius: 50%;
    object-fit: cover;
  }
  
  /* Button */
  .btn-primary {
    background-color: #00e0ff;
    border-color: #00e0ff;
    box-shadow: 0 5px 15px rgba(0, 224, 255, 0.5);
  }
  
  .btn-primary:hover {
    background-color: #00c4e0;
    border-color: #00c4e0;
    box-shadow: 0 5px 25px rgba(0, 224, 255, 0.7);
  }
  
  /* Media Queries */
  @media (max-width: 768px) {
    .about-me {
      text-align: center;
    }
  
    .about-image-circle {
      margin-bottom: 30px;
    }
  }
  
  /* My Services Section */
  .my-services {
    background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
    position: relative;
    overflow: hidden;
  }
  
  .my-services::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('path/to/tech-pattern.png') repeat;
    opacity: 0.1;
    pointer-events: none;
  }
  
  .service-card {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border-radius: 15px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
  }
  
  .service-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  }
  
  .service-modal {
    background: #fff !important;
    color: #222 !important;
    border-radius: 18px;
    border: 1px solid #e5e5e5;
    box-shadow: 0 8px 32px rgba(0,120,212,0.08);
    padding: 0;
}
.service-modal .modal-header {
    border-bottom: none;
    background: #f8f9fa;
    border-radius: 18px 18px 0 0;
    padding: 2rem 2rem 1rem 2rem;
}
.service-modal .modal-title {
    color: #0078d4;
    font-weight: 700;
    font-size: 1.5rem;
}
.service-modal .modal-body {
    padding: 2rem;
}
.service-icon-modern {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    background: #0078d4;
    color: #fff;
}
.service-modal ul {
    padding-left: 0;
}
.service-modal li {
    font-size: 1.05rem;
    margin-bottom: 0.7rem;
    display: flex;
    align-items: center;
}
.service-modal .bg-light {
    background: #f5f6fa !important;
}
@media (max-width: 991px) {
    .service-modal .modal-body {
        padding: 1rem;
    }
}
  
  .service-modal {
    background: linear-gradient(135deg, #0a0a0a 0%, #2a2a2a 100%);
    color: #fff;
  }
  
  .serif-font {
    font-family: 'Playfair Display', serif;
    letter-spacing: 1px;
  }
  
  .service-schema {
    padding: 20px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 10px;
    margin-bottom: 20px;
  }
  
  .schema-section {
    margin-bottom: 20px;
  }
  
  .feature-list {
    list-style: none;
    padding: 0;
  }
  
  .feature-list li {
    margin-bottom: 10px;
    display: flex;
    align-items: center;
  }
  
  .feature-list li i {
    color: #39FF14;
    margin-right: 10px;
  }
  
  .service-benefits {
    padding: 20px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 10px;
  }
  
  .benefit-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-top: 20px;
  }
  
  .benefit-item {
    text-align: center;
    padding: 15px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
  }
  
  .benefit-item i {
    font-size: 2rem;
    color: #39FF14;
    margin-bottom: 10px;
  }
  
  .my-services h2 {
    font-size: 3.5rem;
    color: #f87500;
    margin-bottom: 30px;
    text-shadow: 0 0 10px rgba(248, 117, 0, 0.5);
  }
  
  .my-services .service-card {
    height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    background: rgba(17, 17, 17, 0.8);
    border: 1px solid rgba(57, 255, 20, 0.2);
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    padding: 20px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
  }
  
  .my-services .service-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(57, 255, 20, 0.3);
  }
  
  .my-services .service-icon {
    font-size: 4rem;
    color: #39FF14;
    margin-bottom: 20px;
    transition: color 0.3s ease;
  }
  
  .my-services .service-title {
    font-size: 1.8rem;
    margin-bottom: 15px;
    color: #f87500;
    transition: color 0.3s ease;
  }
  
  .my-services .service-description {
    min-height: 120px;
    font-size: 1rem;
    line-height: 1.8;
    margin: 1.5rem 0;
    color: #cccccc;
  }
  
  .my-services .service-card:hover .service-icon,
  .my-services .service-card:hover .service-title {
    color: #f87500;
  }
  
  .my-services .btn-primary {
    background: rgba(57, 255, 20, 0.3);
    border: 1px solid rgba(57, 255, 20, 0.5);
    color: #FFF;
    transition: all 0.3s ease;
    width: 100%;
    padding: 10px;
    border-radius: 5px;
  }
  
  .my-services .btn-primary:hover {
    background: rgba(57, 255, 20, 0.5);
    box-shadow: 0 0 20px rgba(57, 255, 20, 0.4);
    transform: scale(1.05);
  }
  
  /* NUEVO DISEÑO SECCIÓN SERVICIOS */

.service-card-modern {
    background: rgba(17, 17, 17, 0.85);
    border-radius: 18px;
    box-shadow: 0 4px 24px rgba(57,255,20,0.08);
    padding: 2rem 1.5rem 1.5rem 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: box-shadow 0.3s, transform 0.3s, border-color 0.3s;
    border: 1.5px solid rgba(57,255,20,0.18);
    min-height: 380px;
    position: relative;
    overflow: hidden;
    backdrop-filter: blur(8px);
}
.service-card-modern::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 18px;
    pointer-events: none;
    background: linear-gradient(120deg, rgba(57,255,20,0.08) 0%, transparent 60%);
    opacity: 0.7;
    z-index: 0;
    transition: opacity 0.3s;
}
.service-card-modern:hover {
    box-shadow: 0 8px 32px rgba(57,255,20,0.18), 0 0 20px #39FF14;
    transform: translateY(-6px) scale(1.03);
    border-color: #39FF14;
}
.service-card-modern:hover::before {
    opacity: 1;
    background: linear-gradient(100deg, rgba(57,255,20,0.18) 0%, transparent 70%);
}
.service-icon-modern {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.2rem;
    margin-bottom: 1.2rem;
    background: rgba(57,255,20,0.08);
    box-shadow: 0 0 12px #39FF1433;
    z-index: 1;
}
.service-title-modern,
.service-description-modern,
.btn-outline-primary {
    z-index: 1;
}
.service-title-modern {
    font-size: 1.3rem;
    font-weight: 600;
    color: #39FF14;
    margin-bottom: 0.5rem;
    text-align: center;
    text-shadow: 0 0 8px #39FF1444;
}
.service-description-modern {
    color: #e0ffe0;
    font-size: 1rem;
    text-align: center;
    margin-bottom: 1.5rem;
    flex: 1;
    text-shadow: 0 0 4px #000a;
}
.btn-outline-primary {
    border-color: #39FF14;
    color: #39FF14;
    font-weight: 500;
    transition: background 0.2s, color 0.2s;
    background: rgba(57,255,20,0.07);
}
.btn-outline-primary:hover {
    background: #39FF14;
    color: #111;
}
@media (max-width: 991px) {
    .service-card-modern {
        padding: 1.2rem 0.7rem;
        min-height: 320px;
    }
}
  
  /* Estilos del formulario */
  .form-control::placeholder {
    color: white !important;
    opacity: 1;
  }
  
  .form-control {
    background-color: #111111 !important;
    border: 2px solid #39FF14 !important;
    color: white !important;
  }
  
  .form-control:focus {
    background-color: #111111 !important;
    border-color: white !important;
    box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.25);
    color: white !important;
  }
  
  /* Estilos específicos para los campos */
  input[type="text"],
  input[type="email"],
  textarea {
    color: white !important;
    background-color: #111111 !important;
    border: 2px solid #39FF14 !important;
  }
  
  input[type="text"]:focus,
  input[type="email"]:focus,
  textarea:focus {
    border-color: white !important;
  }
  
  /* WhatsApp Floating Button */
  .whatsapp-float {
      position: fixed;
      width: 60px;
      height: 60px;
      bottom: 40px;
      right: 40px;
      background-color: #25d366;
      color: #FFF;
      border-radius: 50px;
      text-align: center;
      font-size: 30px;
      box-shadow: 0 5px 15px rgba(37, 211, 102, 0.4);
      z-index: 100;
      display: flex;
      align-items: center;
      justify-content: center;
      text-decoration: none;
      transition: all 0.3s ease;
      animation: whatsapp-glow 1.5s infinite;
  }
  
  .whatsapp-float:hover {
      background-color: #128C7E;
      color: #FFF;
      transform: scale(1.1);
      box-shadow: 0 5px 25px rgba(37, 211, 102, 0.7);
  }
  
  /* Animación de brillo para WhatsApp */
  @keyframes whatsapp-glow {
      0% {
          box-shadow: 0 0 5px #25d366,
                      0 0 10px #25d366,
                      0 0 15px #25d366;
      }
      50% {
          box-shadow: 0 0 20px #25d366,
                      0 0 35px #25d366,
                      0 0 40px #25d366;
      }
      100% {
          box-shadow: 0 0 5px #25d366,
                      0 0 10px #25d366,
                      0 0 15px #25d366;
      }
  }
  
  /* Media Query para el botón de WhatsApp en móviles */
  @media screen and (max-width: 767px) {
      .whatsapp-float {
          width: 50px;
          height: 50px;
          bottom: 20px;
          right: 20px;
          font-size: 25px;
      }
  }
  
  /* Project Cards Styles */
  .project-card {
      transition: all 0.3s ease;
      background: #111111 !important;
      border: 1px solid #39FF14 !important;
      overflow: hidden;
  }
  
  .project-card:hover {
      transform: translateY(-10px);
      box-shadow: 0 5px 15px rgba(57, 255, 20, 0.3);
  }
  
  .project-image {
      position: relative;
      overflow: hidden;
  }
  
  .project-image img {
      transition: all 0.3s ease;
      height: 200px;
      object-fit: cover;
      width: 100%;
  }
  
  .project-content {
      padding: 1.5rem !important;
  }
  
  .project-title {
      color: #39FF14;
      font-size: 1.25rem;
      margin-bottom: 0.75rem;
  }
  
  .project-description {
      color: #ffffff;
      font-size: 0.9rem;
      margin-bottom: 0;
  }
  
  /* Media Query */
  @media (max-width: 768px) {
      .project-card {
          margin-bottom: 1.5rem;
      }
  }
  
  .security-solutions {
      position: relative;
      overflow: hidden;
      padding: 100px 0;
      background-color: #000;
  }
  
  .neural-background {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: 
          linear-gradient(rgba(0,0,0,0.8), rgba(0,0,0,0.8)),
          url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiIGZpbGw9IiMwMDAiLz4KPGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMzlGRjE0IiBzdHJva2Utd2lkdGg9IjAuNSI+CjxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIHI9IjIiLz4KPGNpcmNsZSBjeD0iMTAwIiBjeT0iNTAiIHI9IjIiLz4KPGNpcmNsZSBjeD0iMTUwIiBjeT0iNTAiIHI9IjIiLz4KPGxpbmUgeDE9IjUwIiB5MT0iNTAiIHgyPSIxMDAiIHkyPSI1MCIvPgo8bGluZSB4MT0iMTAwIiB5MT0iNTAiIHgyPSIxNTAiIHkyPSI1MCIvPgo8L2c+Cjwvc3ZnPg==');
      animation: neural-movement 20s linear infinite;
      opacity: 0.3;
  }
  
  .security-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 2rem;
      position: relative;
      z-index: 2;
  }
  
  .security-item {
      background: rgba(17, 17, 17, 0.7);
      border: 1px solid #39FF14;
      border-radius: 10px;
      padding: 2rem;
      text-align: center;
      transition: all 0.3s ease;
      backdrop-filter: blur(5px);
  }
  
  .security-item:hover {
      transform: translateY(-10px);
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.3);
  }
  
  .security-item i {
      font-size: 3rem;
      color: #39FF14;
      margin-bottom: 1rem;
      display: block;
  }
  
  .security-item h4 {
      color: white;
      font-size: 1.2rem;
      margin: 0;
  }
  
  @keyframes neural-movement {
      0% {
          background-position: 0 0;
      }
      100% {
          background-position: 200px 200px;
      }
  }
  
  /* Efecto de brillo en hover */
  .security-item::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      border-radius: 10px;
      background: linear-gradient(45deg, transparent, rgba(57, 255, 20, 0.1), transparent);
      z-index: -1;
      transition: all 0.3s ease;
  }
  
  .security-item:hover::before {
      opacity: 1;
      animation: glowing 2s linear infinite;
  }
  
  @keyframes glowing {
      0% {
          background-position: -200% 0;
      }
      100% {
          background-position: 200% 0;
      }
  }
  
  @media (max-width: 768px) {
      .security-grid {
          grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
          gap: 1rem;
      }
      
      .security-item {
          padding: 1.5rem;
      }
  }
  
  /* Base Styles */
  .neural-bg {
      background-color: #000000;
      background-image: 
          radial-gradient(circle at 50% 50%, rgba(57, 255, 20, 0.1) 0%, transparent 50%),
          linear-gradient(rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.9));
  }
  
  /* Glassmorphism Base */
  .glass-effect {
      background: rgba(17, 17, 17, 0.7);
      backdrop-filter: blur(10px);
      border: 1px solid rgba(57, 255, 20, 0.3);
      box-shadow: 0 8px 32px 0 rgba(57, 255, 20, 0.1);
      transition: all 0.3s ease;
  }
  
  .glass-effect:hover {
      border-color: rgba(57, 255, 20, 0.5);
      box-shadow: 0 8px 32px 0 rgba(57, 255, 20, 0.2);
  }
  
  /* Navbar */
  .glass-nav {
      background: rgba(17, 17, 17, 0.8) !important;
      backdrop-filter: blur(10px);
      border-bottom: 1px solid rgba(57, 255, 20, 0.3);
  }
  
  /* Text Effects */
  .glow-text {
      color: #fff;
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.3);
      transition: all 0.3s ease;
  }
  
  .glow-text:hover {
      text-shadow: 0 0 20px rgba(57, 255, 20, 0.5);
  }
  
  /* Cards */
  .glass-card {
      background: rgba(17, 17, 17, 0.7);
      backdrop-filter: blur(10px);
      border: 1px solid rgba(57, 255, 20, 0.3);
      border-radius: 15px;
      padding: 20px;
      transition: all 0.3s ease;
  }
  
  .glass-card:hover {
      transform: translateY(-10px);
      border-color: rgba(57, 255, 20, 0.5);
      box-shadow: 0 10px 30px rgba(57, 255, 20, 0.2);
  }
  
  /* Buttons */
  .glass-button {
      background: rgba(57, 255, 20, 0.2);
      border: 1px solid rgba(57, 255, 20, 0.5);
      backdrop-filter: blur(5px);
      color: #39FF14;
      transition: all 0.3s ease;
  }
  
  .glass-button:hover {
      background: rgba(57, 255, 20, 0.3);
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.4);
      transform: scale(1.05);
  }
  
  /* Form Elements */
  .glass-input {
      background: rgba(17, 17, 17, 0.7) !important;
      border: 1px solid rgba(57, 255, 20, 0.3) !important;
      color: white !important;
      backdrop-filter: blur(5px);
      transition: all 0.3s ease;
  }
  
  .glass-input:focus {
      border-color: rgba(57, 255, 20, 0.5) !important;
      box-shadow: 0 0 15px rgba(57, 255, 20, 0.3) !important;
  }
  
  /* Links */
  .glow-link {
      color: white !important;
      transition: all 0.3s ease;
  }
  
  .glow-link:hover {
      color: #39FF14 !important;
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.5);
  }
  
  /* Footer */
  .glass-footer {
      background: rgba(17, 17, 17, 0.8);
      backdrop-filter: blur(10px);
      border-top: 1px solid rgba(57, 255, 20, 0.3);
      padding: 20px 0;
  }
  
  /* WhatsApp Button */
  .whatsapp-float {
      position: fixed;
      width: 60px;
      height: 60px;
      bottom: 40px;
      right: 40px;
      background-color: rgba(37, 211, 102, 0.9);
      border-radius: 50px;
      text-align: center;
      font-size: 30px;
      box-shadow: 0 0 20px rgba(37, 211, 102, 0.4);
      z-index: 100;
      display: flex;
      align-items: center;
      justify-content: center;
      text-decoration: none;
      color: white;
      transition: all 0.3s ease;
  }
  
  .whatsapp-float:hover {
      transform: scale(1.1);
      box-shadow: 0 0 30px rgba(37, 211, 102, 0.6);
  }
  
  /* Responsive Design */
  @media (max-width: 768px) {
      .glass-card {
          margin-bottom: 20px;
      }
      
      .whatsapp-float {
          width: 50px;
          height: 50px;
          bottom: 20px;
          right: 20px;
          font-size: 25px;
      }
  }
  
  /* Efectos de cristal y brillo global */
  .navbar, .service-card, .project-card, .contact-form, .footer {
      background: rgba(17, 17, 17, 0.7);
      backdrop-filter: blur(10px);
      border: 1px solid rgba(57, 255, 20, 0.3);
      box-shadow: 0 8px 32px 0 rgba(57, 255, 20, 0.1);
      transition: all 0.3s ease;
  }
  
  /* Efectos hover mejorados */
  .service-card:hover,
  .project-card:hover,
  .social-icon:hover,
  .nav-link:hover {
      transform: translateY(-5px);
      border-color: rgba(57, 255, 20, 0.5);
      box-shadow: 0 8px 32px 0 rgba(57, 255, 20, 0.2);
  }
  
  /* Efecto de brillo en bordes */
  .service-card::before,
  .project-card::before,
  .image-circle::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      border-radius: inherit;
      padding: 2px;
      background: linear-gradient(45deg, transparent, rgba(57, 255, 20, 0.3), transparent);
      -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      -webkit-mask-composite: xor;
      mask-composite: exclude;
      pointer-events: none;
  }
  
  /* Mejora de textos con brillo */
  h1, h2, h3, .highlight {
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.3);
      transition: all 0.3s ease;
  }
  
  .highlight:hover {
      text-shadow: 0 0 20px rgba(57, 255, 20, 0.5);
  }
  
  /* Botones con efecto glassmorphism */
  .btn-primary {
      background: rgba(57, 255, 20, 0.2);
      border: 1px solid rgba(57, 255, 20, 0.5);
      backdrop-filter: blur(5px);
      color: #FFF;
      transition: all 0.3s ease;
  }
  
  .btn-primary:hover {
      background: rgba(57, 255, 20, 0.3);
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.4);
      transform: scale(1.05);
  }
  
  /* Inputs con efecto cristal */
  input, textarea {
      background: rgba(17, 17, 17, 0.7) !important;
      border: 1px solid rgba(57, 255, 20, 0.3) !important;
      backdrop-filter: blur(5px);
      color: white !important;
      transition: all 0.3s ease;
  }
  
  input:focus, textarea:focus {
      border-color: rgba(57, 255, 20, 0.5) !important;
      box-shadow: 0 0 15px rgba(57, 255, 20, 0.3) !important;
  }
  
  /* WhatsApp flotante mejorado */
  .whatsapp-float {
      background: rgba(37, 211, 102, 0.9);
      backdrop-filter: blur(5px);
      box-shadow: 0 0 20px rgba(37, 211, 102, 0.4);
      transition: all 0.3s ease;
  }
  
  .whatsapp-float:hover {
      transform: scale(1.1);
      box-shadow: 0 0 30px rgba(37, 211, 102, 0.6);
  }
  
  /* Mejoras responsivas */
  @media (max-width: 768px) {
      .service-card, .project-card {
          margin-bottom: 20px;
      }
      
      .btn-primary {
          padding: 8px 16px;
          font-size: 0.9rem;
      }
      
      .whatsapp-float {
          width: 50px;
          height: 50px;
          bottom: 20px;
          right: 20px;
          font-size: 25px;
      }
  }
  
  /* Novedades Section */
  
  
  /* Security Solutions Section */
  .security-solutions {
      position: relative;
      overflow: hidden;
      padding: 100px 0;
      background-color: #000;
  }
  
  .neural-background {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: 
          linear-gradient(rgba(0,0,0,0.8), rgba(0,0,0,0.8)),
          url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjIwMCIgaGVpZ2h0PSIyMDAiIGZpbGw9IiMwMDAiLz4KPGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMzlGRjE0IiBzdHJva2Utd2lkdGg9IjAuNSI+CjxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIHI9IjIiLz4KPGNpcmNsZSBjeD0iMTAwIiBjeT0iNTAiIHI9IjIiLz4KPGNpcmNsZSBjeD0iMTUwIiBjeT0iNTAiIHI9IjIiLz4KPGxpbmUgeDE9IjUwIiB5MT0iNTAiIHgyPSIxMDAiIHkyPSI1MCIvPgo8bGluZSB4MT0iMTAwIiB5MT0iNTAiIHgyPSIxNTAiIHkyPSI1MCIvPgo8L2c+Cjwvc3ZnPg==');
      animation: neural-movement 20s linear infinite;
      opacity: 0.3;
  }
  
  .security-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 2rem;
      position: relative;
      z-index: 2;
  }
  
  .security-item {
      background: rgba(17, 17, 17, 0.7);
      border: 1px solid #39FF14;
      border-radius: 10px;
      padding: 2rem;
      text-align: center;
      transition: all 0.3s ease;
      backdrop-filter: blur(5px);
  }
  
  .security-item:hover {
      transform: translateY(-10px);
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.3);
  }
  
  .security-item i {
      font-size: 3rem;
      color: #39FF14;
      margin-bottom: 1rem;
      display: block;
  }
  
  .security-item h4 {
      color: white;
      font-size: 1.2rem;
      margin: 0;
  }
  
  .security-item p {
      color: #ccc;
      font-size: 0.9rem;
      line-height: 1.6;
  }
  
  @keyframes neural-movement {
      0% {
          background-position: 0 0;
      }
      100% {
          background-position: 200px 200px;
      }
  }
  
  /* Efecto de brillo en hover */
  .security-item::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      border-radius: 10px;
      background: linear-gradient(45deg, transparent, rgba(57, 255, 20, 0.1), transparent);
      z-index: -1;
      transition: all 0.3s ease;
  }
  
  .security-item:hover::before {
      opacity: 1;
      animation: glowing 2s linear infinite;
  }
  
  @keyframes glowing {
      0% {
          background-position: -200% 0;
      }
      100% {
          background-position: 200% 0;
      }
  }
  
  @media (max-width: 768px) {
      .security-grid {
          grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
          gap: 1rem;
      }
      
      .security-item {
          padding: 1.5rem;
      }
  }
  
  /* Estilos para el cuadro de encuesta */
  .floating-survey {
      background: linear-gradient(145deg, rgba(0, 0, 0, 0.95), rgba(20, 20, 20, 0.95));
      border-left: 4px solid var(--cyber-green);
      padding: 25px;
      backdrop-filter: blur(10px);
      box-shadow: -5px 0 30px rgba(57, 255, 20, 0.2);
      border-radius: 10px; /* Añadir bordes redondeados */
  }
  
  .floating-survey h4 {
      color: var(--cyber-green);
      font-size: 1.6rem;
      margin-bottom: 15px;
      font-family: 'Orbitron', sans-serif;
      display: flex;
      align-items: center;
      gap: 10px;
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.3);
  }
  
  .floating-survey p {
      color: #fff;
      font-size: 1rem;
      line-height: 1.6;
      margin-bottom: 20px;
      border-left: 2px solid var(--cyber-green);
      padding-left: 10px;
  }
  
  .floating-survey .btn {
      width: 100%;
      background: var(--cyber-green);
      color: #000;
      font-weight: 600;
      padding: 12px;
      border: none;
      border-radius: 8px; /* Bordes redondeados para el botón */
      font-size: 1.1rem;
      text-transform: uppercase;
      letter-spacing: 1px;
      transition: all 0.3s ease;
  }
  
  .floating-survey .btn:hover {
      transform: translateX(5px);
      background: #FFD700; /* Color dorado al pasar el mouse */
      box-shadow: -5px 0 20px rgba(255, 215, 0, 0.3);
  }
  
  /* Animación suave global */
  * {
      transition: all 0.3s ease;
  }
  
  /* Efecto de brillo para iconos */
  .social-icon i {
      transition: all 0.3s ease;
  }
  
  .social-icon:hover i {
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.7);
      color: #39FF14;
  }
  
  .security-tech-section {
      padding: 100px 0;
      background: #000;
  }
  
  .video-container {
      border-radius: 20px;
      overflow: hidden;
      position: relative;
  }
  
  .video-container video {
      width: 100%;
      display: block;
  }
  
  .tech-features {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 1.5rem;
      margin-top: 2rem;
  }
  
  .feature-item {
      padding: 1.5rem;
      text-align: center;
      transition: all 0.3s ease;
  }
  
  .feature-item:hover {
      transform: translateY(-10px);
  }
  
  .feature-item i {
      font-size: 2.5rem;
      color: #39FF14;
      margin-bottom: 1rem;
  }
  
  
  
  .news-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 2rem;
      max-width: 1400px;
      margin: 0 auto;
  }
  
  .news-item {
      display: flex;
      gap: 1.5rem;
      padding: 2rem;
      border-radius: 25px;
      background: rgba(17, 17, 17, 0.7);
      border: 1px solid rgba(57, 255, 20, 0.3);
      transition: all 0.3s ease;
      text-decoration: none;
      color: white;
  }
  
  .news-item:hover {
      transform: translateY(-10px);
      border-color: rgba(57, 255, 20, 0.5);
      box-shadow: 0 10px 30px rgba(57, 255, 20, 0.2);
      background: rgba(17, 17, 17, 0.8);
  }
  
  .news-icon {
      font-size: 2.5rem;
      color: #39FF14;
      display: flex;
      align-items: flex-start;
      padding-top: 0.5rem;
  }
  
  .news-content {
      flex: 1;
  }
  
  .news-content h4 {
      font-size: 1.3rem;
      margin-bottom: 1rem;
      color: #e1ff00;
      font-weight: 600;
  }
  
  .news-content p {
      font-size: 1rem;
      margin-bottom: 1rem;
      color: rgba(255, 255, 255, 0.9);
      line-height: 1.6;
  }
  
  .news-source {
      display: inline-block;
      font-size: 0.9rem;
      color: rgba(57, 255, 20, 0.7);
      padding: 0.5rem 1rem;
      border-radius: 20px;
      background: rgba(57, 255, 20, 0.1);
      margin-top: 0.5rem;
  }
  
  @media (max-width: 768px) {
      .news-grid {
          grid-template-columns: 1fr;
          padding: 0 1rem;
      }
  
      .news-item {
          padding: 1.5rem;
      }
  
      .news-icon {
          font-size: 2rem;
      }
  
      .news-content h4 {
          font-size: 1.2rem;
      }
  
      .news-content p {
          font-size: 0.95rem;
      }
  }
  
  /* Estilos para el menú desplegable en móvil */
  @media (max-width: 991px) {
      .navbar-collapse {
          position: absolute;
          top: 100%;
          left: 0;
          right: 0;
          background: rgba(17, 17, 17, 0.95);
          backdrop-filter: blur(10px);
          padding: 1rem;
          border-radius: 10px;
          margin-top: 0.5rem;
      }
  
      .navbar-nav {
          text-align: center;
      }
  
      .nav-item {
          padding: 0.5rem 0;
      }
  
      .nav-link {
          display: inline-block;
          padding: 0.5rem 1rem;
          color: white !important;
          transition: all 0.3s ease;
      }
  
      .nav-link:hover {
          color: #39FF14 !important;
          transform: translateX(5px);
      }
  }
  
  /* Estilos para el icono de cierre */
  .navbar-toggler .close-icon {
      display: none;
      color: #39FF14;
      font-size: 2rem;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
  }
  
  .navbar-toggler.active .navbar-toggler-icon {
      display: none;
  }
  
  .navbar-toggler.active .close-icon {
      display: block;
  }
  
  /* Estilos para el menú desplegable */
  .navbar-collapse {
      transition: all 0.3s ease;
  }
  
  .navbar-collapse.show {
      display: block;
  }
  
  @media (max-width: 991px) {
      .navbar-collapse {
          position: absolute;
          top: 100%;
          left: 0;
          right: 0;
          background: rgba(17, 17, 17, 0.95);
          backdrop-filter: blur(10px);
          padding: 1rem;
          border-radius: 10px;
          margin-top: 0.5rem;
      }
  }
  
  /* Nuevo estilo para el enlace de visita */
  .visit-link {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      color: rgba(57, 255, 20, 0.7);
      margin-top: 1rem;
      font-size: 0.9rem;
      position: relative;
      cursor: pointer;
  }
  
  .visit-link::after {
      content: '';
      position: absolute;
      bottom: -2px;
      left: 0;
      width: 0;
      height: 1px;
      background-color: #39FF14;
      transition: width 0.3s ease;
  }
  
  .news-item:hover .visit-link {
      color: #39FF14;
  }
  
  .news-item:hover .visit-link::after {
      width: 100%;
  }
  
  .visit-link i {
      font-size: 1.2rem;
  }
  
  /* Estilos para los enlaces del navbar */
  .navbar-nav .nav-link {
      color: rgba(255, 255, 255, 0.8) !important;
      position: relative;
      padding: 0.5rem 1rem !important;
      transition: color 0.3s ease;
  }
  
  .navbar-nav .nav-link::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      width: 0;
      height: 2px;
      background: #39FF14;
      transform: translateX(-50%);
      transition: width 0.3s ease;
      box-shadow: 0 0 10px #39FF14;
  }
  
  .navbar-nav .nav-link:hover {
      color: #39FF14 !important;
  }
  
  .navbar-nav .nav-link:hover::after {
      width: 70%;
  }
  
  /* Asegurarse de que no haya fondo negro al hacer hover */
  .nav-item:hover, 
  .nav-link:hover {
      background: transparent !important;
  }
  
  @media (max-width: 991px) {
      .navbar-nav .nav-link::after {
          left: 0;
          transform: none;
      }
      
      .navbar-nav .nav-link:hover::after {
          width: 100%;
      }
  }
  
  /* Quitar el borde exterior del formulario */
  .contact-form {
      border: none !important;
      box-shadow: none !important;
      background-color: black;
  }
  
  /* Mantener los bordes individuales de los campos */
  .contact-form input,
  .contact-form textarea {
      background-color: #111 !important;
      border: 1px solid #39FF14 !important;
      color: white !important;
      padding: 1rem !important;
      border-radius: 5px;
  }
  
  /* El resto de los estilos se mantienen igual */
  
  .contact-section {
      padding: 5rem 0;
      background: transparent;
      width: 100%;
      max-width: 1200px;
      margin: 0 auto;
  }
  
  .contact-section h2 {
      text-align: center;
      margin-bottom: 3rem;
  }
  
  /* Mejoras para SEO y accesibilidad */
  .skip-to-main-content {
      position: absolute;
      left: -9999px;
      z-index: 999;
      padding: 1em;
      background-color: #000;
      color: #fff;
      text-decoration: none;
  }
  
  .skip-to-main-content:focus {
      left: 50%;
      transform: translateX(-50%);
  }
  
  /* Asegurar contraste de color adecuado */
  .text-white {
      color: #ffffff !important;
  }
  
  /* Mejorar legibilidad */
  p, .service-description {
      line-height: 1.6;
      margin-bottom: 1.2em;
  }
  
  /* Asegurar que los enlaces sean identificables */
  a:focus {
      outline: 2px solid #39FF14;
      outline-offset: 2px;
  }
  
  /* Animaciones base */
  .animate-on-scroll {
      opacity: 0;
      transform: translateY(30px);
      transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
      will-change: transform, opacity; /* Optimización de rendimiento */
  }
  
  .animate-on-scroll.animate {
      opacity: 1;
      transform: translateY(0);
  }
  
  /* Variaciones de animaciones */
  .fade-in-left {
      transform: translateX(-50px);
  }
  
  .fade-in-left.animate {
      transform: translateX(0);
  }
  
  .fade-in-right {
      transform: translateX(50px);
  }
  
  .fade-in-right.animate {
      transform: translateX(0);
  }
  
  .fade-in-up {
      transform: translateY(50px);
  }
  
  .fade-in-up.animate {
      transform: translateY(0);
  }
  
  .fade-in-down {
      transform: translateY(-50px);
  }
  
  .fade-in-down.animate {
      transform: translateY(0);
  }
  
  .scale-up {
      transform: scale(0.5);
  }
  
  .scale-up.animate {
      transform: scale(1);
  }
  
  /* Retrasos escalonados para elementos en secuencia */
  .service-card:nth-child(1) { transition-delay: 0.1s; }
  .service-card:nth-child(2) { transition-delay: 0.2s; }
  .service-card:nth-child(3) { transition-delay: 0.3s; }
  .service-card:nth-child(4) { transition-delay: 0.4s; }
  .service-card:nth-child(5) { transition-delay: 0.5s; }
  .service-card:nth-child(6) { transition-delay: 0.6s; }
  
  .news-item:nth-child(1) { transition-delay: 0.1s; }
  .news-item:nth-child(2) { transition-delay: 0.2s; }
  .news-item:nth-child(3) { transition-delay: 0.3s; }
  .news-item:nth-child(4) { transition-delay: 0.4s; }
  
  /* Video Modal Styles - Redesigned */
  .modal-dialog {
      max-width: 75vw !important;
      margin: 2rem auto;
  }
  
  .modal-content {
      background: rgba(0, 0, 0, 0.95);
      border: 1px solid rgba(57, 255, 20, 0.2);
      border-radius: 15px;
      box-shadow: 0 0 30px rgba(57, 255, 20, 0.1);
      backdrop-filter: blur(20px);
      position: relative;
      overflow: hidden;
  }
  
  .modal-content::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: linear-gradient(45deg, rgba(57, 255, 20, 0.05), transparent);
      pointer-events: none;
  }
  
  .modal-body {
      position: relative;
      padding: 1.5rem;
      background: rgb(255 255 255 / 70%);
      border-radius: 10px;
      z-index: 1;
      background-color: black;
  }
  
  #videoPlayer {
      width: 100%;
      border-radius: 8px;
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.15);
      border: 1px solid rgba(57, 255, 20, 0.3);
  }
  
  .btn-close {
      position: absolute;
      right: 1rem;
      top: 1rem;
      background-color: rgba(57, 255, 20, 0.2);
      padding: 0.5rem;
      border-radius: 50%;
      z-index: 2;
      transition: all 0.3s ease;
  }
  
  .btn-close:hover {
      background-color: rgba(57, 255, 20, 0.4);
      transform: scale(1.1);
  }
  
  /* Efecto de entrada del modal */
  .modal.fade .modal-dialog {
      transform: scale(0.95);
      opacity: 0;
      transition: all 0.3s ease-out;
  }
  
  .modal.show .modal-dialog {
      transform: scale(1);
      opacity: 1;
  }
  
  /* Ajustes responsivos */
  @media (max-width: 768px) {
      .modal-dialog {
          max-width: 95vw !important;
          margin: 1rem auto;
      }
      
      .modal-body {
          padding: 1rem;
      }
  }
  
  /* Variables de color */
  :root {
      --cyber-yellow: #F7FF00;
      --cyber-pink: #FF003C;
      --cyber-blue: #00FFF0;
      --cyber-green: #39FF14;
      --dark-bg: #0D0D0D;
      --darker-bg: #070707;
  }
  
  /* Splash Screen */
  .splash-screen {
      background: var(--darker-bg);
      position: fixed;
      width: 100%;
      height: 100%;
      z-index: 9999;
      display: flex;
      justify-content: center;
      align-items: center;
      overflow: hidden;
  }
  
  .splash-content {
      position: relative;
      z-index: 2;
      text-align: center;
  }
  
  .splash-logo {
      width: 200px;
      height: 200px;
      position: relative;
      margin-bottom: 2rem;
      animation: glitch 2s infinite;
  }
  
  .splash-logo::before,
  .splash-logo::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: url('/logo circular.png') center/contain no-repeat;
      opacity: 0.5;
  }
  
  .splash-logo::before {
      animation: glitch-1 2s infinite;
      clip-path: polygon(0 0, 100% 0, 100% 45%, 0 45%);
  }
  
  .splash-logo::after {
      animation: glitch-2 2s infinite;
      clip-path: polygon(0 80%, 100% 20%, 100% 100%, 0 100%);
  }
  
  .splash-text {
      font-family: 'Orbitron', sans-serif;
      font-size: 3rem;
      color: var(--cyber-yellow);
      text-transform: uppercase;
      letter-spacing: 3px;
      margin-bottom: 1rem;
      position: relative;
      text-shadow: 2px 2px var(--cyber-pink);
  }
  
  .splash-subtext {
      font-family: 'Share Tech Mono', monospace;
      color: var(--cyber-blue);
      font-size: 1.2rem;
      opacity: 0.8;
  }
  
  /* Efecto de escáner */
  .scan-line {
      position: absolute;
      width: 100%;
      height: 100px;
      background: linear-gradient(
          to bottom,
          transparent,
          var(--cyber-green) 50%,
          transparent
      );
      opacity: 0.1;
      top: -50%;
      animation: scanning 2s linear infinite;
  }
  
  /* Efecto de glitch en el fondo */
  .glitch-bg {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: repeating-linear-gradient(
          0deg,
          var(--darker-bg) 0%,
          var(--darker-bg) 5%,
          transparent 5%,
          transparent 10%
      );
      opacity: 0.3;
      animation: glitch-bg 0.2s infinite;
  }
  
  /* Animaciones */
  @keyframes scanning {
      0% { transform: translateY(0); }
      100% { transform: translateY(100vh); }
  }
  
  @keyframes glitch {
      0%, 100% { transform: translate(0); }
      20% { transform: translate(-2px, 2px); }
      40% { transform: translate(-2px, -2px); }
      60% { transform: translate(2px, 2px); }
      80% { transform: translate(2px, -2px); }
  }
  
  @keyframes glitch-1 {
      0%, 100% { transform: translate(0); }
      40% { transform: translate(-2px); }
      80% { transform: translate(2px); }
  }
  
  @keyframes glitch-2 {
      0%, 100% { transform: translate(0); }
      40% { transform: translate(2px); }
      80% { transform: translate(-2px); }
  }
  
  @keyframes glitch-bg {
      0% { transform: translateX(0); }
      50% { transform: translateX(-1px); }
      100% { transform: translateX(1px); }
  }
  
  /* Ajustes responsivos */
  @media (max-width: 768px) {
      .splash-logo {
          width: 150px;
          height: 150px;
      }
  
      .splash-text {
          font-size: 2rem;
      }
  
      .splash-subtext {
          font-size: 1rem;
      }
  }
  
  /* Splash Screen Mejorado */
  .cyber-ring {
      position: absolute;
      width: 300px;
      height: 300px;
      border: 2px solid var(--cyber-green);
      border-radius: 50%;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      animation: rotate 4s linear infinite;
  }
  
  .loading-bar {
      width: 300px;
      height: 4px;
      background: rgba(57, 255, 20, 0.2);
      margin: 20px auto;
      position: relative;
      overflow: hidden;
      border-radius: 2px;
  }
  
  .loading-progress {
      position: absolute;
      width: 100%;
      height: 100%;
      background: var(--cyber-green);
      animation: loading 2s infinite;
      box-shadow: 0 0 10px var(--cyber-green);
  }
  
  @keyframes rotate {
      from { transform: translate(-50%, -50%) rotate(0deg); }
      to { transform: translate(-50%, -50%) rotate(360deg); }
  }
  
  @keyframes loading {
      0% { transform: translateX(-100%); }
      50% { transform: translateX(0); }
      100% { transform: translateX(100%); }
  }
  
  /* Optimizaciones de rendimiento */
  .service-card {
      will-change: transform;
      contain: content;
  }
  
  .animate-on-scroll {
      will-change: opacity, transform;
  }
  
  /* Optimizaciones para dispositivos móviles */
  @media (max-width: 768px) {
      /* Reducir complejidad de animaciones */
      .animate-on-scroll {
          transform: none;
          opacity: 1;
      }
      
      /* Optimizar imágenes */
      img {
          max-width: 100%;
          height: auto;
      }
      
      /* Mejorar legibilidad */
      p, .service-description {
          font-size: 16px;
          line-height: 1.6;
      }
      
      /* Optimizar touch targets */
      button, 
      .btn,
      .nav-link {
          min-height: 44px;
          min-width: 44px;
          padding: 12px 16px;
      }
  }
  
  /* Mejoras de accesibilidad */
  :focus {
      outline: 3px solid #39FF14;
      outline-offset: 2px;
  }
  
  .skip-link {
      position: absolute;
      top: -40px;
      left: 0;
      background: #000;
      color: white;
      padding: 8px;
      z-index: 100;
  }
  
  .skip-link:focus {
      top: 0;
  }
  
  /* Estilos para los modales de políticas y términos */
  .privacy-content,
  .terms-content {
      color: #fff;
      padding: 1rem;
  }
  
  .privacy-content h6,
  .terms-content h6 {
      color: var(--cyber-green);
      margin-top: 1.5rem;
      margin-bottom: 1rem;
      font-size: 1.1rem;
  }
  
  .privacy-content p,
  .terms-content p {
      margin-bottom: 1rem;
      line-height: 1.6;
  }
  
  .privacy-content ul,
  .terms-content ul {
      list-style: none;
      padding-left: 1.5rem;
      margin-bottom: 1.5rem;
  }
  
  .privacy-content ul li,
  .terms-content ul li {
     
      margin-bottom: 0.5rem;
      padding-left: 1.5rem;
  }
  
  .privacy-content ul li:before,
  .terms-content ul li:before {
      content: "→";
      position: absolute;
      left: 0;
      color: var(--cyber-green);
  }
  
  .modal-content {
      background-color: #1d1d1d;
      border: 1px solid var(--cyber-green);
  }
  
  .modal-header {
      border-bottom: 1px solid rgba(57, 255, 20, 0.2);
  }
  
  .modal-header .modal-title {
      color: var(--cyber-green);
  }
  
  .modal-header .btn-close {
      color: #fff;
      filter: invert(1) brightness(200%);
  }
  
  /* Estilos para la alerta de éxito */
  .success-alert {
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      background: rgba(17, 17, 17, 0.95);
      border: 1px solid #39FF14;
      border-radius: 10px;
      padding: 2rem;
      z-index: 9999;
      text-align: center;
      backdrop-filter: blur(10px);
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.3);
      animation: alertAppear 0.3s ease-out;
  }
  
  .success-alert .success-icon {
      font-size: 3rem;
      color: #39FF14;
      margin-bottom: 1rem;
      animation: iconPulse 1.5s infinite;
  }
  
  .success-alert h3 {
      color: white;
      margin-bottom: 0.5rem;
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.3);
  }
  
  .success-alert p {
      color: rgba(255, 255, 255, 0.8);
      margin-bottom: 0;
  }
  
  /* Estilos base */
  .floating-survey {
      position: fixed;
      z-index: 1000;
      display: none;
  }
  
  /* Estilos para desktop */
  @media (min-width: 769px) {
      .floating-survey {
          top: 50%;
          right: 30px;
          transform: translateY(-50%);
          width: 350px;
          background: linear-gradient(145deg, rgba(0, 0, 0, 0.95), rgba(20, 20, 20, 0.95));
          border-left: 4px solid var(--cyber-green);
          padding: 25px;
          backdrop-filter: blur(10px);
          box-shadow: -5px 0 30px rgba(57, 255, 20, 0.2);
          clip-path: polygon(
              0 0,
              100% 0,
              100% 85%,
              95% 100%,
              0 100%
          );
          display: block;
      }
  
      .floating-survey h4 {
          color: #FFF;
          font-size: 1.6rem;
          margin-bottom: 15px;
          font-family: 'Orbitron', sans-serif;
          display: flex;
          align-items: center;
          gap: 10px;
          text-shadow: 0 0 10px rgb(0, 100, 255);
      }
  
      .floating-survey h4 i {
          color: #FFD700;
          font-size: 2rem;
          animation: shakeGift 2s infinite;
      }
  
      .floating-survey p {
          color: #fff;
          font-size: 1rem;
          line-height: 1.6;
          margin-bottom: 20px;
          border-left: 2px solid var(--cyber-green);
          padding-left: 10px;
      }
  
      .floating-survey .btn {
          width: 100%;
          background: var(--cyber-green);
          color: #000;
          font-weight: 600;
          padding: 12px;
          border: none;
          border-radius: 8px; /* Bordes redondeados para el botón */
          font-size: 1.1rem;
          text-transform: uppercase;
          letter-spacing: 1px;
          transition: all 0.3s ease;
      }
  
      .floating-survey .btn:hover {
          transform: translateX(5px);
          background: #FFD700;
          box-shadow: -5px 0 20px rgba(255, 215, 0, 0.3);
      }
  
      .survey-close {
          position: absolute;
          top: 10px;
          right: 10px;
          background: transparent;
          border: none;
          color: rgba(255, 255, 255, 0.7);
          font-size: 1.2rem;
          cursor: pointer;
          transition: all 0.3s ease;
      }
  
      .survey-close:hover {
          color: var(--cyber-green);
          transform: scale(1.1);
      }
  
      @keyframes shakeGift {
          0%, 100% { transform: rotate(0); }
          25% { transform: rotate(-10deg); }
          75% { transform: rotate(10deg); }
      }
  
      .floating-survey {
          animation: slideInRight 0.5s ease-out forwards;
      }
  
      .floating-survey.hiding {
          animation: slideOutRight 0.3s ease-in forwards;
      }
  
      @keyframes slideInRight {
          from {
              opacity: 0;
              transform: translate(100%, -50%);
          }
          to {
              opacity: 1;
              transform: translate(0, -50%);
          }
      }
  
      @keyframes slideOutRight {
          to {
              opacity: 0;
              transform: translate(100%, -50%);
          }
      }
  }
  
  /* Estilos específicos para móvil */
  @media (max-width: 768px) {
      .floating-survey {
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          width: 90%;
          max-width: 320px;
          background: linear-gradient(145deg, rgba(0, 0, 0, 0.98), rgba(20, 20, 20, 0.95));
          padding: 20px;
          border: 2px solid var(--cyber-green);
          border-radius: 15px;
          box-shadow: 0 0 25px rgba(57, 255, 20, 0.2);
          animation: fadeIn 0.3s ease-out;
      }
  
      .floating-survey h4 {
          font-size: 1.2rem;
          color: var(--cyber-green);
          display: flex;
          align-items: center;
          justify-content: center;
          gap: 10px;
          margin-bottom: 12px;
          text-align: center;
      }
  
      .floating-survey h4 i {
          color: #FFD700;
          animation: pulse 2s infinite;
      }
  
      .floating-survey p {
          font-size: 0.9rem;
          color: #fff;
          margin-bottom: 15px;
          line-height: 1.4;
          text-align: center;
          padding: 0 10px;
      }
  
      .floating-survey .btn {
          background: var(--cyber-green);
          color: #000;
          width: 100%;
          padding: 12px;
          border: none;
          border-radius: 8px;
          font-weight: 600;
          font-size: 1rem;
          text-transform: uppercase;
          letter-spacing: 1px;
      }
  
      .survey-close {
          position: absolute;
          top: 10px;
          right: 10px;
          background: transparent;
          border: none;
          color: rgba(255, 255, 255, 0.7);
          font-size: 1.2rem;
          padding: 5px;
      }
  
      .floating-survey.hiding {
          animation: fadeOut 0.3s ease-in forwards;
      }
  
      @keyframes fadeIn {
          from {
              opacity: 0;
              transform: translate(-50%, -40%);
          }
          to {
              opacity: 1;
              transform: translate(-50%, -50%);
          }
      }
  
      @keyframes fadeOut {
                   from {
              opacity: 1;
              transform: translate(-50%, -50%);
          }
                   to {
              opacity: 0;
              transform: translate(-50%, -60%);
          }
      }
  
      @keyframes pulse {
          0% { transform: scale(1); }
          50% { transform: scale(1.1); }
          100% { transform: scale(1); }
      }
  }
  /* Estilos para el Centro de Ayuda */
  .help-center {
      position: relative;
      padding: 100px 0;
      background-color: #000;
      overflow: hidden;
  }
  
  .help-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2rem;
      position: relative;
      z-index: 2;
  }
  
  /* Estilos de la tarjeta cyber */
  .cyber-card {
      position: relative;
      background: rgba(17, 17, 17, 0.7);
      border: 1px solid #39FF14;
      border-radius: 10px;
      padding: 2rem;
      overflow: hidden;
      transition: all 0.3s ease;
      cursor: pointer;
  }
  
  .cyber-card:hover {
      transform: translateY(-10px);
      box-shadow: 0 0 30px rgba(57, 255, 20, 0.3);
  }
  
  /* Efectos de la tarjeta cyber */
  .cyber-card-effects {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      pointer-events: none;
  }
  
  .cyber-card-glitch {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(45deg, transparent 65%, rgba(57, 255, 20, 0.1) 70%, transparent 75%);
      background-size: 200% 200%;
      animation: glitch 3s infinite;
  }
  
  .cyber-card-scan {
      position: absolute;
      top: -100%;
      left: 0;
      width: 100%;
      height: 3px;
      background: rgba(57, 255, 20, 0.5);
      animation: scan 3s linear infinite;
  }
  
  /* Estilos del modal cyber */
  .cyber-modal {
      background: #0a0a0a;
      color: #e0e0e0;
  }
  
  .cyber-modal .modal-header {
      background: #050505;
      border-bottom: 1px solid #39FF14;
      padding: 1rem;
  }
  
  .cyber-modal .modal-title {
      color: #39FF14;
      font-weight: 600;
  }
  
  .diagnostic-option {
      height: 100%;
      padding: 2rem;
      text-align: center;
  }
  
  .diagnostic-option i {
      font-size: 3rem;
      color: #39FF14;
      margin-bottom: 1rem;
  }
  
  .diagnostic-option h4 {
      color: white;
      margin-bottom: 1rem;
  }
  
  .diagnostic-option ul {
      list-style: none;
      padding: 0;
      margin: 0;
      color: #ccc;
  }
  
  .diagnostic-option ul li {
      margin-bottom: 0.5rem;
      position: relative;
      padding-left: 1.5rem;
  }
  
  .diagnostic-option ul li:before {
      content: '>';
      position: absolute;
      left: 0;
      color: #39FF14;
  }
  
  /* Animaciones */
  @keyframes glitch {
      0% {
          background-position: 200% 0;
      }
      100% {
          background-position: -200% 0;
      }
  }
  
  @keyframes scan {
      0% {
          top: -100%;
      }
      100% {
          top: 300%;
      }
  }
  
  /* Media Queries */
  @media (max-width: 992px) {
      .help-grid {
          grid-template-columns: repeat(2, 1fr);
      }
  }
  
  @media (max-width: 768px) {
      .help-grid {
          grid-template-columns: 1fr;
      }
      
      .diagnostic-option {
          margin-bottom: 1rem;
      }
  }
  /* Estilos para el diagnóstico */
  .option-card {
      background: rgba(17, 17, 17, 0.7);
      border: 1px solid #39FF14;
      border-radius: 10px;
      transition: all 0.3s ease;
      cursor: pointer;
      position: relative;
      overflow: hidden;
  }
  
  .option-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 0 15px rgba(57, 255, 20, 0.2);
  }
  
  .option-card.selected {
      background: rgba(57, 255, 20, 0.1);
      border-color: #39FF14;
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.3);
  }
  
  .option-card label {
      cursor: pointer;
      color: white;
  }
  
  .progress {
      height: 5px;
      background-color: rgba(57, 255, 20, 0.1);
  }
  
  .progress-bar {
      background-color: #39FF14;
      transition: width 0.3s ease;
  }
  
  .score-circle {
      width: 150px;
      height: 150px;
      border-radius: 50%;
      border: 3px solid #39FF14;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto;
      position: relative;
      animation: glow 2s infinite alternate;
  }
  
  .score-number {
      font-size: 2.5rem;
      color: #39FF14;
      font-weight: bold;
  }
  
  .security-level {
      color: #39FF14;
      text-transform: uppercase;
      letter-spacing: 1px;
  }
  
  .recommendations ul {
      list-style: none;
      padding-left: 0;
  }
  
  .recommendations li {
      padding: 10px;
      margin: 5px 0;
      background: rgba(57, 255, 20, 0.1);
      border-radius: 5px;
      position: relative;
      padding-left: 25px;
  }
  
  .recommendations li:before {
      content: '→';
      position: absolute;
      left: 10px;
      color: #39FF14;
  }
  
  @keyframes glow {
      from {
          box-shadow: 0 0 10px rgba(57, 255, 20, 0.2);
      }
      to {
          box-shadow: 0 0 20px rgba(57, 255, 20, 0.4);
      }
  }
  
  /* Media Queries */
  @media (max-width: 768px) {
      .score-circle {
          width: 120px;
          height: 120px;
      }
      
      .score-number {
          font-size: 2rem;
      }
  }
  /* Estilos para el Modal de Roadmap */
  .cyber-modal {
      background: #0a0a0a;
      color: #e0e0e0;
  }
  
  .cyber-modal .modal-header {
      background: #111;
      border-bottom: 1px solid #333;
      padding: 1rem;
  }
  
  .cyber-modal .modal-title {
      color: #00ff8c;
      font-weight: 600;
  }
  
  /* Sidebar de Navegación */
  .cyber-sidebar {
      background: #110505;
      border-right: 1px solid #330f0f;
      min-height: calc(100vh - 60px);
  }
  
  .cyber-sidebar .nav-link {
      color: #e0e0e0;
      border-left: 3px solid transparent;
      transition: all 0.3s ease;
  }
  
  .cyber-sidebar .nav-link:hover {
      background: rgba(255, 51, 51, 0.1);
      border-left-color: #ff3333;
  }
  
  .cyber-sidebar .nav-link.active {
      background: rgba(255, 51, 51, 0.2);
      border-left-color: #ff3333;
      color: #ff3333;
  }
  
  /* Tarjetas de Información */
  .cyber-info-card {
      background: rgba(17, 5, 5, 0.7);
      border: 1px solid #0f09d3;
      padding: 1rem;
      border-radius: 8px;
      margin-bottom: 1rem;
  }
  
  .cyber-info-card h4 {
      color: #fff;
      font-size: 1.1rem;
      margin-bottom: 0.5rem;
  }
  
  .cyber-info-card p {
      color: #efeb08;
      font-size: 1rem;
      margin: 0;
  }
  
  /* Progress Bars */
  .progress {
      background-color: rgba(255, 51, 51, 0.1);
      height: 5px;
  }
  
  .progress-bar {
      background-color: #ff3333;
  }
  
  /* Badges y Tags */
  .badge {
      background: rgba(255, 51, 51, 0.2);
      color: #000;
      border: 1px solid rgba(255, 51, 51, 0.3);
  }
  
  /* Botones */
  .btn-outline-primary {
      color: #fffc33;
      border-color: #185a0a;
  }
  
  .btn-outline-primary:hover {
      background-color: #ff3333;
      color: #fff;
  }
  
  /* Scrollbar Personalizada */
  ::-webkit-scrollbar-thumb {
      background: #330f0f;
  }
  
  ::-webkit-scrollbar-thumb:hover {
      background: #ff3333;
  }
  
  /* Animaciones */
  @keyframes glowRed {
      from {
          box-shadow: 0 0 10px rgba(255, 51, 51, 0.2);
      }
      to {
          box-shadow: 0 0 20px rgba(255, 51, 51, 0.4);
      }
  }
  
  .skill-card:hover {
      animation: glowRed 1.5s infinite alternate;
  }
  
  /* Red Team Specific Styles */
  #redteam-content {
      background: #0a0a0a;
      color: #e0e0e0;
  }
  
  #redteam-header {
      background: #110505;
      border-bottom: 1px solid #330f0f;
  }
  
  #redteam-header .modal-title {
      color: #ff3333;
  }
  
  #redteam-sidebar {
      background: #110505;
      border-right: 1px solid #330f0f;
  }
  
  #redteam-sidebar .nav-link {
      color: #e0e0e0;
      border-left: 3px solid transparent;
  }
  
  #redteam-sidebar .nav-link:hover {
      background: rgba(255, 51, 51, 0.1);
      border-left-color: #ff3333;
  }
  
  #redteam-sidebar .nav-link.active {
      background: rgba(255, 51, 51, 0.2);
      border-left-color: #ff3333;
      color: #ff3333;
  }
  
  #redteam-maincontent .cyber-info-card {
      background: rgba(17, 5, 5, 0.7);
      border: 1px solid #330f0f;
  }
  
  #redteam-maincontent .progress-bar {
      background-color: #ff3333;
  }
  
  #redteam-maincontent .badge {
      background: rgba(255, 51, 51, 0.2);
      color: #d7d7d7;
  }
  
  #redteam-maincontent .btn-outline-primary {
      color: #ff3333;
      border-color: #ff3333;
  }
  
  #redteam-maincontent .btn-outline-primary:hover {
      background-color: #ff3333;
      color: #fff;
  }
  
  /* Estilos para el Modal de Diagnóstico */
  .diagnostic-option {
      padding: 2rem;
      border-radius: 10px;
      cursor: pointer;
      transition: all 0.3s ease;
      height: 100%;
      background: rgba(17, 5, 5, 0.7);
      border: 1px solid #330f0f;
  }
  
  .diagnostic-option:hover {
      transform: translateY(-5px);
      border-color: #39FF14;
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.3);
  }
  
  .diagnostic-option i {
      font-size: 2.5rem;
      color: #39FF14;
      margin-bottom: 1rem;
  }
  
  .diagnostic-option h4 {
      color: white;
      margin-bottom: 1rem;
  }
  
  .diagnostic-option ul {
      list-style: none;
      padding: 0;
      margin: 0;
  }
  
  .diagnostic-option ul li {
      color: #e0e0e0;
      margin-bottom: 0.5rem;
      padding-left: 1.5rem;
      position: relative;
  }
  
  .diagnostic-option ul li:before {
      content: '→';
      color: #39FF14;
      position: absolute;
      left: 0;
  }
  
  /* Efectos cyberpunk para las opciones de diagnóstico */
  .diagnostic-option .cyber-card-effects {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      pointer-events: none;
  }
  
  /* Estilos para el Modal de Diagnóstico */
  .diagnostic-tabs .nav-pills {
      border-bottom: 1px solid #ff3333;
      padding-bottom: 1rem;
      gap: 1rem;
  }
  
  .diagnostic-tabs .nav-link {
      background: rgba(57, 255, 20, 0.1);
      color: #39FF14;
      border: 1px solid #39FF14;
      padding: 0.75rem 1.5rem;
      transition: all 0.3s ease;
  }
  
  .diagnostic-tabs .nav-link:hover {
      background: rgba(57, 255, 20, 0.2);
      transform: translateY(-2px);
  }
  
  .diagnostic-tabs .nav-link.active {
      background: #39FF14;
      color: #000;
  }
  
  .diagnostic-sections {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 2rem;
      margin-top: 2rem;
  }
  
  .section-item {
      background: rgba(5, 5, 5, 0.7);
      border: 1px solid #39FF14;
      padding: 1.5rem;
      border-radius: 8px;
      position: relative;
      overflow: hidden;
  }
  
  .section-item::before {
      content: '';
      position: absolute;
      top: 0;
      left: -100%;
      width: 100%;
      height: 2px;
      background: linear-gradient(90deg, transparent, #39FF14);
      animation: scanLine 2s linear infinite;
  }
  
  .section-item h4 {
      color: #39FF14;
      margin-bottom: 1rem;
      display: flex;
      align-items: center;
      gap: 0.5rem;
  }
  
  .section-item ul {
      list-style: none;
      padding: 0;
      margin: 0;
  }
  
  .section-item ul li {
      color: #e0e0e0;
      margin-bottom: 0.75rem;
      padding-left: 1.5rem;
      position: relative;
  }
  
  .section-item ul li::before {
      content: '→';
      color: #39FF14;
      position: absolute;
      left: 0;
  }
  
  .btn-danger {
      background: #39FF14;
      color: #000;
      border: none;
      padding: 0.75rem 2rem;
      font-weight: 500;
      text-transform: uppercase;
      letter-spacing: 1px;
      position: relative;
      overflow: hidden;
  }
  
  .btn-danger::after {
      content: '';
      position: absolute;
      top: -50%;
      left: -50%;
      width: 200%;
      height: 200%;
      background: linear-gradient(
          transparent,
          rgba(255, 255, 255, 0.1),
          transparent
      );
      transform: rotate(45deg);
      transition: all 0.3s ease;
  }
  
  .btn-danger:hover::after {
      transform: rotate(45deg) translate(50%, 50%);
  }
  
  /* Toast de notificación */
  .diagnostic-toast {
      position: fixed;
      bottom: 30px;
      right: 30px;
      background: rgba(5, 5, 5, 0.95);
      border: 1px solid #39FF14;
      padding: 15px 25px;
      border-radius: 8px;
      color: #fff;
      z-index: 9999;
      transform: translateY(100px);
      opacity: 0;
      transition: all 0.3s ease;
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.2);
  }
  
  .diagnostic-toast.show {
      transform: translateY(0);
      opacity: 1;
  }
  
  /* Estilos para el modal de diagnóstico */
  .cyber-modal {
      background: rgba(0, 0, 0, 0.95);
      border: 1px solid #39FF14;
      color: white;
  }
  
  .cyber-modal .modal-header {
      border-bottom: 1px solid rgba(57, 255, 20, 0.3);
      padding: 1.5rem;
  }
  
  .cyber-modal .modal-title {
      color: #39FF14;
      font-family: 'Share Tech Mono', monospace;
  }
  
  .diagnostic-options {
      padding: 1rem;
  }
  
  .option-card {
      background: rgba(17, 17, 17, 0.7);
      border: 1px solid rgba(57, 255, 20, 0.3);
      border-radius: 10px;
      padding: 1.5rem;
      margin-bottom: 1rem;
      cursor: pointer;
      transition: all 0.3s ease;
  }
  
  .option-card:hover {
      transform: translateY(-5px);
      border-color: #39FF14;
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.2);
  }
  
  .option-content {
      text-align: center;
  }
  
  .option-content i {
      font-size: 2rem;
      color: #39FF14;
      margin-bottom: 1rem;
  }
  
  .option-content h4 {
      color: white;
      margin-bottom: 0.5rem;
  }
  
  .option-content p {
      color: rgba(255, 255, 255, 0.7);
      margin: 0;
  }
  
  .btn-close {
      background-color: #39FF14;
      opacity: 0.7;
  }
  
  .btn-close:hover {
      opacity: 1;
  }
  
  /* Estilos para el modal de preguntas */
  .progress-bar-container {
      width: 100%;
      margin-top: 10px;
  }
  
  .progress {
      height: 5px;
      background: rgba(57, 255, 20, 0.1);
  }
  
  .progress-bar {
      background-color: #39FF14;
      transition: width 0.3s ease;
  }
  
  .options-grid {
      display: grid;
      gap: 15px;
      margin-top: 20px;
  }
  
  .results-container {
      padding: 20px;
  }
  
  .score-circle {
      width: 150px;
      height: 150px;
      border: 3px solid #39FF14;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto;
      animation: glow 2s infinite alternate;
  }
  
  .score-number {
      font-size: 2.5rem;
      color: #39FF14;
      font-family: 'Share Tech Mono', monospace;
  }
  
  @keyframes glow {
      from {
          box-shadow: 0 0 10px rgba(57, 255, 20, 0.5);
      }
      to {
          box-shadow: 0 0 20px rgba(57, 255, 20, 0.8);
      }
  }
  
  .career-card {
      background: rgba(17, 17, 17, 0.7);
      border: 1px solid rgba(128, 128, 128, 0.3); /* Gris neutro */
      transition: all 0.3s ease;
  }
  
  .career-card:hover {
      border-color: #9370DB; /* Un violeta suave para el hover */
      box-shadow: 0 0 20px rgba(147, 112, 219, 0.2);
  }
  
  /* Estilos específicos para Red Team (mantenemos el rojo) */
  #redteam-card {
      border: 1px solid rgba(255, 0, 0, 0.3);
  }
  
  #redteam-card:hover {
      border-color: #ff0000;
      box-shadow: 0 0 20px rgba(255, 0, 0, 0.2);
  }
  
  /* Estilos específicos para Blue Team (mantenemos el azul) */
  #blueteam-card {
      border: 1px solid rgba(0, 102, 255, 0.3);
  }
  
  #blueteam-card:hover {
      border-color: #0066ff;
      box-shadow: 0 0 20px rgba(0, 102, 255, 0.2);
  }
  
  /* Estilos para el resto de las categorías */
  .career-card .card-icon i {
      color: #9370DB; /* Color base para los íconos */
  }
  
  .career-card h3 {
      color: #ffffff;
  }
  
  .career-card p {
      color: #e0e0e0;
  }
  
  .career-features li {
      color: #cccccc;
  }
  
  /* Botones neutros para las demás categorías */
  .career-card .btn-primary {
      background-color: #52C900;
      border-color: #9370DB;
  }
  
  .career-card .btn-primary:hover {
      background-color: #8A2BE2;
      border-color: #8A2BE2;
  }
  
  /* Estilos específicos para Incident Responder */
  #incidentresponder-card {
      border: 1px solid rgba(255, 165, 0, 0.3); /* Naranja para emergencias */
  }
  
  #incidentresponder-card:hover {
      border-color: #FFA500;
      box-shadow: 0 0 20px rgba(255, 165, 0, 0.2);
  }
  
  /* Estilos para el modal de Incident Responder */
  #incidentresponder-content {
      background: #0a0a0a;
  }
  
  #incidentresponder-header {
      background: #1a1000;
      border-bottom: 1px solid #FFA500;
  }
  
  #incidentresponder-header .modal-title {
      color: #FFA500;
  }
  
  #incidentresponder-sidebar {
      background: #0d0d0d;
      border-right: 1px solid rgba(255, 165, 0, 0.2);
  }
  
  #incidentresponder-sidebar .nav-link:hover {
      background: rgba(255, 165, 0, 0.1);
      color: #FFA500;
  }
  
  #incidentresponder-sidebar .nav-link.active {
      background: rgba(255, 165, 0, 0.2);
      color: #FFA500;
      border-left: 3px solid #FFA500;
  }
  
  #incidentresponder-maincontent .skill-item {
      border: 1px solid rgba(255, 165, 0, 0.3);
      background: rgba(10, 10, 10, 0.7);
  }
  
  #incidentresponder-maincontent .skill-item:hover {
      border-color: #FFA500;
      box-shadow: 0 0 15px rgba(255, 165, 0, 0.2);
  }
  
  #incidentresponder-maincontent .skill-icon i {
      color: #FFA500;
  }
  
  #incidentresponder-maincontent .btn-outline-info {
      color: #FFA500;
      border-color: #FFA500;
  }
  
  #incidentresponder-maincontent .btn-outline-info:hover {
      background: #FFA500;
      color: #000;
  }
  
  /* Estilos base para modales */
  .modal-content.cyber-modal {
      background-color: #000000;
      border: 1px solid rgba(57, 255, 20, 0.3);
  }
  
  /* Sidebar y navegación */
  .nav-pills .nav-link {
      color: #ffffff;
      background: transparent;
      padding: 15px;
      margin: 5px 0;
      transition: all 0.3s ease;
  }
  
  .nav-pills .nav-link:hover {
      color: #39FF14;
      background: rgba(57, 255, 20, 0.1);
  }
  
  .nav-pills .nav-link.active {
      color: #39FF14;
      background: rgba(57, 255, 20, 0.2);
      border-left: 3px solid #39FF14;
  }
  
  /* Contenido principal */
  .tab-content {
      background-color: #000000;
      min-height: 100vh;
  }
  
  .tab-pane {
      opacity: 1;
      transition: opacity 0.2s ease-in-out;
  }
  
  .tab-pane.fade {
      opacity: 0;
  }
  
  .tab-pane.fade.show {
      opacity: 1;
  }
  
  /* Elementos de contenido */
  .cyber-info-card,
  .skill-item,
  .tool-item,
  .cert-item {
      background: rgba(0, 0, 0, 0.7);
      border: 1px solid rgba(57, 255, 20, 0.2);
      padding: 20px;
      margin-bottom: 15px;
      transition: all 0.3s ease;
  }
  
  .cyber-info-card:hover,
  .skill-item:hover,
  .tool-item:hover,
  .cert-item:hover {
      border-color: #39FF14;
      box-shadow: 0 0 15px rgba(57, 255, 20, 0.2);
  }
  
  /* Estilos mejorados para el modal de cursos */
  #cursosRecomendadosModal {
      backdrop-filter: blur(10px);
  }
  
  #cursosRecomendadosModal .modal-content {
      background: rgba(0, 0, 0, 0.95);
      border: 1px solid #39FF14;
      box-shadow: 0 0 30px rgba(57, 255, 20, 0.2);
      border-radius: 15px;
      overflow: hidden;
  }
  
  #cursosRecomendadosModal .modal-header {
      border-bottom: 1px solid rgba(57, 255, 20, 0.3);
      padding: 2rem 2rem 1rem;
      position: relative;
      overflow: hidden;
  }
  
  #cursosRecomendadosModal .modal-title {
      width: 100%;
      text-align: center;
      font-family: 'Share Tech Mono', monospace;
      color: #39FF14;
      text-transform: uppercase;
      letter-spacing: 2px;
      font-size: 1.8rem;
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.5),
                   0 0 20px rgba(57, 255, 20, 0.3);
      animation: titlePulse 2s infinite;
  }
  
  .curso-promo-card {
      background: rgba(0, 0, 0, 0.7);
      border: 1px solid rgba(57, 255, 20, 0.3);
      border-radius: 15px;
      overflow: hidden;
      transition: all 0.3s ease;
      margin-bottom: 1.5rem;
      position: relative;
  }
  
  .curso-promo-card:hover {
      transform: translateY(-5px);
      border-color: #39FF14;
      box-shadow: 0 0 30px rgba(57, 255, 20, 0.3);
  }
  
  .curso-banner {
      height: 200px;
      background-size: cover;
      background-position: center;
      position: relative;
  }
  
  .curso-overlay {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,0.8));
      display: flex;
      align-items: flex-start;
      padding: 1rem;
  }
  
  .curso-badge {
      background: linear-gradient(45deg, #39FF14, #32CD32);
      color: #000;
      padding: 0.5rem 1rem;
      border-radius: 20px;
      font-weight: 600;
      font-size: 0.9rem;
      box-shadow: 0 0 15px rgba(57, 255, 20, 0.3);
      animation: badgePulse 2s infinite;
  }
  
  .curso-content {
      padding: 1.5rem;
  }
  
  .curso-content h3 {
      color: #39FF14;
      margin-bottom: 1rem;
      font-size: 1.4rem;
  }
  
  .curso-content p {
      color: #e0e0e0;
      margin-bottom: 1.5rem;
      font-size: 0.95rem;
      line-height: 1.6;
  }
  
  .btn-curso {
      display: inline-block;
      padding: 0.8rem 1.5rem;
      background: transparent;
      border: 2px solid #39FF14;
      color: #39FF14;
      border-radius: 25px;
      text-decoration: none;
      transition: all 0.3s ease;
      text-transform: uppercase;
      letter-spacing: 1px;
      font-size: 0.9rem;
      font-weight: 600;
      width: 100%;
      text-align: center;
  }
  
  .btn-curso:hover {
      background: #39FF14;
      color: #000;
      box-shadow: 0 0 20px rgba(57, 255, 20, 0.4);
  }
  
  @keyframes titlePulse {
      0% { text-shadow: 0 0 10px rgba(57, 255, 20, 0.5), 0 0 20px rgba(57, 255, 20, 0.3); }
      50% { text-shadow: 0 0 20px rgba(57, 255, 20, 0.7), 0 0 30px rgba(57, 255, 20, 0.5); }
      100% { text-shadow: 0 0 10px rgba(57, 255, 20, 0.5), 0 0 20px rgba(57, 255, 20, 0.3); }
  }
  
  @keyframes badgePulse {
      0% { box-shadow: 0 0 15px rgba(57, 255, 20, 0.3); }
      50% { box-shadow: 0 0 25px rgba(57, 255, 20, 0.5); }
      100% { box-shadow: 0 0 15px rgba(57, 255, 20, 0.3); }
  }
  
  @media (min-width: 768px) {
      .cursos-grid {
          grid-template-columns: repeat(3, 1fr);
      }
  }
  
  /* Estilos para el modal de cursos */
  .cursos-modal {
      background: rgba(0, 0, 0, 0.95);
  }
  
  .cursos-modal .modal-content {
      background: linear-gradient(45deg, #000000, #0a0a0a);
      border: 1px solid #39FF14;
      border-radius: 10px;
      box-shadow: 0 0 30px rgba(57, 255, 20, 0.15);
  }
  
  .cursos-modal .modal-header {
      border: none;
      padding: 2rem 2rem 1rem;
      text-align: center;
  }
  
  .cursos-modal .modal-title {
      width: 100%;
      color: #39FF14;
      font-size: 1.5rem;
      font-weight: 600;
      letter-spacing: 1px;
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.3);
  }
  
  .cursos-grid {
      display: grid;
      gap: 1.5rem;
      padding: 0 2rem 2rem;
  }
  
  .curso-card {
      background: rgba(10, 10, 10, 0.5);
      border: 1px solid rgba(57, 255, 20, 0.2);
      border-radius: 8px;
      overflow: hidden;
      transition: transform 0.3s ease, border-color 0.3s ease;
  }
  
  .curso-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 5px 15px rgba(0, 255, 255, 0.2);
  }
  
  .curso-imagen {
      width: 100%;
      height: 120px;
      object-fit: contain;
      background: rgba(0, 0, 0, 0.2);
      padding: 1rem;
  }
  
  .curso-content {
      padding: 1.5rem;
      text-align: center;
  }
  
  .curso-content h3 {
      color: #00ff88;
      margin-bottom: 1rem;
      font-size: 1.25rem;
  }
  
  .curso-content p {
      color: #ccc;
      font-size: 0.9rem;
      margin-bottom: 1.5rem;
  }
  
  .btn-curso {
      display: inline-block;
      padding: 0.8rem 1.5rem;
      background: linear-gradient(45deg, #00ff88, #00ffcc);
      color: #000;
      text-decoration: none;
      border-radius: 25px;
      font-weight: 600;
      transition: all 0.3s ease;
  }
  
  .btn-curso:hover {
      transform: scale(1.05);
      box-shadow: 0 0 15px rgba(0, 255, 255, 0.3);
  }
  
  /* Estilos para los Roadmaps */
  .career-card {
      background: #0d1117;
      border: 1px solid #30363d;
      padding: 2.5rem;
      position: relative;
      transition: all 0.3s ease;
  }
  
  .career-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 3px;
      background: linear-gradient(90deg, #484f58, #30363d);
  }
  
  .career-card::after {
      content: '';
      position: absolute;
      top: 10px;
      right: 10px;
      width: 8px;
      height: 8px;
      background: #238636;
      border-radius: 50%;
      box-shadow: 0 0 10px rgba(35, 134, 54, 0.4);
  }
  
  .career-card:hover {
      border-color: #484f58;
      transform: translateY(-4px);
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  }
  
  .card-icon {
      font-size: 2.4rem;
      color: #58a6ff;
      margin-bottom: 1.5rem;
      transition: all 0.3s ease;
  }
  
  .career-card:hover .card-icon {
      transform: scale(1.1);
      color: #79c0ff;
  }
  
  .career-card h3 {
      color: #c9d1d9;
      font-size: 1.8rem;
      font-weight: 600;
      margin-bottom: 1.5rem;
      letter-spacing: 0.5px;
  }
  
  .career-features {
      list-style: none;
      padding: 0;
      margin: 2rem 0;
      border-top: 1px solid #30363d;
      padding-top: 1.5rem;
  }
  
  .career-features li {
      color: #8b949e;
      padding: 1rem;
      margin-bottom: 0.8rem;
      background: #161b22;
      border-left: 3px solid #30363d;
      transition: all 0.3s ease;
      font-family: 'SF Mono', 'Consolas', monospace;
      font-size: 0.95rem;
  }
  
  .career-features li:hover {
      border-left-color: #58a6ff;
      background: #1c2128;
      padding-left: 1.5rem;
  }
  
  .badges {
      display: flex;
      flex-wrap: wrap;
      gap: 0.8rem;
      margin: 1.5rem 0;
  }
  
  .badge {
      background: #161b22;
      color: #000;
      padding: 0.5rem 1rem;
      font-size: 0.9rem;
      border: 1px solid #30363d;
      font-family: 'SF Mono', 'Consolas', monospace;
  }
  
  .badge:hover {
      border-color: #484f58;
      color: #c9d1d9;
  }
  
  .btn-primary {
      background: #10d536;
      border: none;
      color: #000;
      padding: 0.8rem 1.6rem;
      font-weight: 500;
      transition: all 0.3s ease;
      font-family: 'SF Mono', 'Consolas', monospace;
      text-transform: uppercase;
      letter-spacing: 1px;
      font-size: 0.9rem;
  }
  
  .btn-primary:hover {
      background: #2ea043;
      transform: translateY(-2px);
      box-shadow: 0 5px 15px rgba(35, 134, 54, 0.3);
  }
  
  .career-card p {
      color: #8b949e;
      line-height: 1.6;
      margin: 1.5rem 0;
      font-size: 1rem;
      padding-bottom: 1.5rem;
      border-bottom: 1px solid #30363d;
  }
  
  /* Animación de entrada */
  @keyframes slideIn {
      from {
          opacity: 0;
          transform: translateY(20px);
      }
      to {
          opacity: 1;
          transform: translateY(0);
      }
  }
  
  .career-card {
      animation: slideIn 0.5s ease forwards;
  }
  
  /* Estilos adicionales para los nuevos modales */
  .service-modal .modal-body {
      padding: 2rem;
  }
  
  .service-schema {
      position: relative;
      overflow: hidden;
  }
  
  .service-schema::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: linear-gradient(45deg, rgba(57, 255, 20, 0.05) 0%, rgba(0, 0, 0, 0) 100%);
      pointer-events: none;
  }
  
  .schema-section {
      transition: transform 0.3s ease;
  }
  
  .schema-section:hover {
      transform: translateX(10px);
  }
  
  .feature-list li {
      transition: all 0.3s ease;
      padding: 8px 12px;
      border-radius: 5px;
  }
  
  .feature-list li:hover {
      background: rgba(57, 255, 20, 0.1);
      transform: translateX(5px);
  }
  
  .benefit-item {
      transition: all 0.3s ease;
      cursor: pointer;
  }
  
  .benefit-item:hover {
      transform: translateY(-5px);
      background: rgba(57, 255, 20, 0.1);
  }
  
  .benefit-item i {
      transition: all 0.3s ease;
  }
  
  .benefit-item:hover i {
      transform: scale(1.2);
  }
  
  /* Estilos específicos para cada servicio */
  #servicioSeguridadModal .feature-list i {
      color: #0035ff;
  }
  
  #servicioConsultoriaModal .feature-list i {
      color: #ffee00;
  }
  
  /* Animaciones para los elementos interactivos */
  @keyframes pulse {
      0% { transform: scale(1); }
      50% { transform: scale(1.1); }
      100% { transform: scale(1); }
  }
  
  .benefit-item:hover i {
      animation: pulse 1s infinite;
  }
  
  /* Mejoras visuales adicionales */
  .modal-header {
      border-bottom: 1px solid rgba(57, 255, 20, 0.2);
  }
  
  .modal-title {
      font-size: 2rem;
      background: linear-gradient(45deg, #39FF14, #00ff88);
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
  }
  
  .schema-section h6 {
      font-size: 1.4rem;
      margin-bottom: 1.5rem;
      color: #39FF14;
      text-shadow: 0 0 10px rgba(57, 255, 20, 0.3);
  }
  
  /* Glassmorphism oscuro para modales */
.glass-dark {
    background: rgba(18, 22, 24, 0.97) !important;
    color: #0c45ed !important;
    border-radius: 22px;
    border: 1.5px solid rgba(57,255,20,0.13);
    box-shadow: 0 8px 40px 0 rgba(57,255,20,0.10);
    backdrop-filter: blur(14px);
    overflow: hidden;
    padding: 0;
}
.service-modal .modal-header {
    border-bottom: none;
    background: linear-gradient(90deg,rgba(57,255,20,0.07) 0%,rgba(0,0,0,0.01) 100%);
    border-radius: 22px 22px 0 0;
    padding: 2rem 2.5rem 1.2rem 2.5rem;
    align-items: center;
}
.service-modal .modal-title {
    color: inherit;
    font-weight: 700;
    font-size: 1.6rem;
    letter-spacing: 0.5px;
    text-shadow: 0 0 8px #39FF1440;
}
.service-icon-modern {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.7rem;
    box-shadow: 0 0 18px #39FF1433;
    margin-bottom: 0.5rem;
    flex-shrink: 0;
    border: 2px solid #39FF14;
    background: rgba(57,255,20,0.10);
    transition: box-shadow 0.2s, border-color 0.2s;
}
.service-modal .modal-header .service-icon-modern i {
    filter: drop-shadow(0 0 8px #39FF14aa);
}
.service-modal .modal-body {
    padding: 2.2rem 2.5rem 2rem 2.5rem;
}
.glass-img {
    background: rgba(57,255,20,0.07);
    border-radius: 14px;
    box-shadow: 0 2px 18px rgba(57,255,20,0.13);
    overflow: hidden;
    transition: box-shadow 0.2s;
}
.glass-img img {
    border-radius: 10px;
    width: 100%;
    object-fit: cover;
    min-height: 220px;
    max-height: 270px;
    transition: transform 0.3s;
}
.glass-img:hover img {
    transform: scale(1.04) rotate(-1deg);
    box-shadow: 0 0 24px #39FF14aa;
}
.feature-list {
    padding-left: 0;
    margin-bottom: 0;
}
.feature-list li {
    color: #ffffff;
    font-size: 1.13rem;
    margin-bottom: 0.8rem;
    display: flex;
    align-items: center;
    gap: 0.7em;
    text-shadow: 0 0 4px #000a;
    transition: color 0.2s;
    font-weight: 500;
}
.feature-list li i {
    color: #39FF14;
    margin-right: 0.5em;
    font-size: 1.5em;
    filter: drop-shadow(0 0 6px #39FF14aa);
    transition: color 0.2s;
}
.glass-inner {
    background: rgb(0 0 0 / 93%);
    color: #ffffff;
    border-radius: 14px;
    box-shadow: 0 2px 18px rgba(57,255,20,0.10);
    min-height: 220px;
}
.glass-inner h6,
.service-modal h6 {
    color: #ffffff !important;
    font-weight: 700;
    margin-bottom: 1.1rem;
    letter-spacing: 0.5px;
    font-size: 1.15rem;
}
.service-modal .btn-primary {
    background: linear-gradient(90deg, #0dcb00 60%, #00ff88 100%);
    border: none;
    color: #000000;
    font-weight: 600;
    letter-spacing: 4px;
    box-shadow: 0 2px 16px #39FF1440;
    border-radius: 5px;
    padding: 0.7rem 2.2rem;
    transition: background 0.2s, color 0.2s, box-shadow 0.2s;
}
.service-modal .btn-primary:hover {
    background: linear-gradient(90deg,#00ff88 0%,#39FF14 100%);
    color: #111;
    box-shadow: 0 4px 24px #39FF14aa;
}

/* Estilos específicos para el modal de cursos recomendados */
#cursosRecomendadosModal .curso-img {
    width: 100%;
    height: 200px; /* Altura fija para todas las imágenes */
    object-fit: contain; /* Mantiene la proporción sin estirar */
    background-color: rgba(0, 0, 0, 0.5); /* Fondo oscuro para las imágenes */
    padding: 1rem; /* Espacio alrededor de la imagen */
    border-radius: 8px;
    margin-bottom: 1rem;
}

#cursosRecomendadosModal .cursos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    padding: 2rem;
}

#cursosRecomendadosModal .curso-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1rem;
}

#cursosRecomendadosModal .curso-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

#cursosRecomendadosModal .curso-content h3 {
    margin-bottom: 1rem;
    color: #39FF14;
    font-size: 1.4rem;
}

#cursosRecomendadosModal .curso-content p {
    margin-bottom: 1.5rem;
    color: #e0e0e0;
}

/* Estilos actualizados para el pop-up de consulta */
.consulta-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(0, 0, 0, 0.95);
    border: 2px solid #39FF14;
    border-radius: 15px;
    padding: 25px;
    width: 90%;
    max-width: 400px;
    z-index: 1001;
    box-shadow: 0 0 30px rgba(57, 255, 20, 0.3);
    display: none;
}

/* Overlay oscuro difuminado */
.consulta-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(5px);
    z-index: 1000;
    display: none;
}

.consulta-popup.show,
.consulta-overlay.show {
    display: block;
    animation: fadeIn 0.3s ease-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Mejoras visuales para el contenido */
.consulta-content {
    text-align: center;
}

.popup-icon {
    font-size: 3rem;
    color: #39FF14;
    margin-bottom: 15px;
    animation: pulse 2s infinite;
}

.consulta-popup h3 {
    color: #39FF14;
    font-size: 1.8rem;
    margin-bottom: 10px;
    text-shadow: 0 0 10px rgba(57, 255, 20, 0.3);
}

.consulta-btn {
    margin-top: 20px;
    padding: 12px 25px;
    background: #25D366;
    color: #fff;
    border-radius: 25px;
    text-decoration: none;
    font-weight: bold;
    display: inline-block;
    transition: all 0.3s ease;
}

.consulta-btn:hover {
    background: #128C7E;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(37, 211, 102, 0.4);
}

/* Estilos mejorados para el botón de cierre del popup */
.consulta-popup .close-btn {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 30px;
    height: 30px;
    border: 2px solid #39FF14;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.7);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    padding: 0;
    z-index: 2;
}

.consulta-popup .close-btn i {
    color: #39FF14;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.consulta-popup .close-btn:hover {
    background: rgba(57, 255, 20, 0.2);
    box-shadow: 0 0 15px rgba(57, 255, 20, 0.5);
    transform: rotate(90deg);
}

.consulta-popup .close-btn:hover i {
    color: #fff;
}
