.elementor-kit-12{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-12 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* 1. Base ultra oscura con degradado profundo */
body {
  overflow-x: hidden !important;
  background: radial-gradient(circle at 50% 30%, #0e1422 0%, #05070d 70%, #020305 100%) !important;
  background-attachment: fixed !important;
  position: relative;
}

/* 2. Red de Nodos / Constelación (Más oscura y tenue) */
body::before {
  content: "";
  position: fixed;
  top: -20%;
  left: -20%;
  width: 140vw;
  height: 140vh;
  pointer-events: none;
  z-index: 0;
  
  /* Degradados sutiles + Patrón con opacidad reducida */
  background-image: 
    radial-gradient(circle at 30% 30%, rgba(56, 189, 248, 0.08) 0%, transparent 40%),
    radial-gradient(circle at 70% 70%, rgba(37, 99, 235, 0.08) 0%, transparent 45%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400' viewBox='0 0 400 400'%3E%3Cg fill='none' stroke='%2338bdf8' stroke-width='0.4' stroke-opacity='0.12'%3E%3Cpath d='M50 50 L150 120 L280 40 L350 180 L220 300 L90 220 Z'/%3E%3Cpath d='M150 120 L220 300'/%3E%3Cpath d='M280 40 L90 220'/%3E%3Cpath d='M50 50 L350 180'/%3E%3Ccircle cx='50' cy='50' r='2' fill='%2360a5fa' fill-opacity='0.3'/%3E%3Ccircle cx='150' cy='120' r='3' fill='%2338bdf8' fill-opacity='0.4'/%3E%3Ccircle cx='280' cy='40' r='2' fill='%2393c5fd' fill-opacity='0.2'/%3E%3Ccircle cx='350' cy='180' r='3.5' fill='%2338bdf8' fill-opacity='0.4'/%3E%3Ccircle cx='220' cy='300' r='2' fill='%2360a5fa' fill-opacity='0.3'/%3E%3Ccircle cx='90' cy='220' r='3' fill='%2393c5fd' fill-opacity='0.3'/%3E%3C/g%3E%3C/svg%3E");
  
  background-size: 100% 100%, 100% 100%, 350px 350px;
  background-position: center;
  opacity: 0.6;

  animation: redNeuralGiro 45s linear infinite;
}

/* 3. Partículas tenue flotando */
body::after {
  content: "";
  position: fixed;
  top: -50%;
  left: 0;
  width: 100vw;
  height: 200vh;
  pointer-events: none;
  z-index: 0;

  background-image: 
    radial-gradient(circle, rgba(56, 189, 248, 0.4) 1.5px, transparent 2px),
    radial-gradient(circle, rgba(96, 165, 250, 0.3) 1px, transparent 2px);
  background-size: 320px 320px, 450px 450px;
  background-position: 0 0, 100px 180px;

  animation: lluviaParticulas 30s linear infinite;
}

/* 4. Asegurar fondo transparente en contenedores */
.elementor-section, .e-con, .elementor-location-header {
  position: relative;
  z-index: 1;
  background-color: transparent !important;
}

/* --- ANIMACIONES --- */
@keyframes redNeuralGiro {
  0% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(180deg) scale(1.1); }
  100% { transform: rotate(360deg) scale(1); }
}

@keyframes lluviaParticulas {
  0% { transform: translateY(0); }
  100% { transform: translateY(-50%); }
}
/* --- ESTILO NEÓN APLICADO SOLO A TARJETAS DE CONTENIDO PRINCIPAL --- */

/* 1. Seleccionar tarjetas de Servicios, Métricas y Portafolio únicamente */
.elementor-section:not(.elementor-location-header):not(.elementor-location-footer) .e-con-inner > .e-con,
.elementor-section:not(.elementor-location-header):not(.elementor-location-footer) .elementor-widget-icon-box,
.elementor-section:not(.elementor-location-header):not(.elementor-location-footer) .elementor-widget-container > div[class*="box"] {
  background: rgba(15, 23, 42, 0.6) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(56, 189, 248, 0.3) !important;
  box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4),
              0 0 15px 0 rgba(56, 189, 248, 0.15) !important;
  border-radius: 16px !important;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

/* 2. Efecto Hover en las tarjetas */
.elementor-section:not(.elementor-location-header):not(.elementor-location-footer) .e-con-inner > .e-con:hover,
.elementor-section:not(.elementor-location-header):not(.elementor-location-footer) .elementor-widget-icon-box:hover,
.elementor-section:not(.elementor-location-header):not(.elementor-location-footer) .elementor-widget-container > div[class*="box"]:hover {
  transform: translateY(-6px) scale(1.01) !important;
  border-color: rgba(56, 189, 248, 0.85) !important;
  box-shadow: 0 12px 40px 0 rgba(0, 0, 0, 0.6),
              0 0 25px 5px rgba(56, 189, 248, 0.5) !important;
}

/* 3. Limpieza forzada: Quitar bordes y fondos al Hero Principal, Nav y Footer */
.elementor-location-header,
.elementor-location-footer,
.elementor-location-header *,
.elementor-location-footer *,
.elementor-section:first-of-type > .e-con,
.elementor-section:first-of-type > .elementor-container {
  border: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  background-color: transparent !important;
}/* End custom CSS */