.elementor-4052 .elementor-element.elementor-element-7967351{--display:flex;--min-height:80vh;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4052 .elementor-element.elementor-element-3201b75{--display:flex;--padding-top:4em;--padding-bottom:4em;--padding-left:0em;--padding-right:0em;}.elementor-4052 .elementor-element.elementor-element-3201b75:not(.elementor-motion-effects-element-type-background), .elementor-4052 .elementor-element.elementor-element-3201b75 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#121212;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-4052 .elementor-element.elementor-element-c0bc112 .elementor-heading-title{font-family:"Unbounded", Sans-serif;font-size:3em;font-weight:600;color:#FFFFFF;}.elementor-4052 .elementor-element.elementor-element-f7235b2{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4052 .elementor-element.elementor-element-f7235b2:not(.elementor-motion-effects-element-type-background), .elementor-4052 .elementor-element.elementor-element-f7235b2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#121212;}.elementor-4052 .elementor-element.elementor-element-3d6976c{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--gap:0em 10em;--row-gap:0em;--column-gap:10em;--padding-top:2em;--padding-bottom:4em;--padding-left:0em;--padding-right:0em;}.elementor-4052 .elementor-element.elementor-element-3d6976c:not(.elementor-motion-effects-element-type-background), .elementor-4052 .elementor-element.elementor-element-3d6976c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#121212;}.elementor-4052 .elementor-element.elementor-element-6ed53f5{--display:flex;--gap:2em 0em;--row-gap:2em;--column-gap:0em;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4052 .elementor-element.elementor-element-82cd87b .elementor-heading-title{font-family:"Unbounded", Sans-serif;font-size:3em;font-weight:600;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4052 .elementor-element.elementor-element-c59ca9c{font-family:"Roboto", Sans-serif;font-size:1em;font-weight:400;color:#B6B6B6;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-4052 .elementor-element.elementor-element-2ca5734 .elementor-button{background-color:transparent;font-family:"Roboto", Sans-serif;font-size:1em;font-weight:600;background-image:linear-gradient(207deg, #CE6161 0%, #9829F2 100%);transition-duration:1s;border-radius:12px 12px 12px 12px;padding:1.51em 1.51em 1.51em 1.51em;}.elementor-4052 .elementor-element.elementor-element-2ca5734 .elementor-button:hover, .elementor-4052 .elementor-element.elementor-element-2ca5734 .elementor-button:focus{background-color:transparent;background-image:linear-gradient(65deg, #FF6F38 0%, #6923BF 100%);box-shadow:0px 0px 50px 0px rgba(255, 0, 176.28260869565213, 0.5);}.elementor-4052 .elementor-element.elementor-element-ffae7d7{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-4052 .elementor-element.elementor-element-a0e20c3{--e-transform-origin-x:center;--e-transform-origin-y:center;}.elementor-4052 .elementor-element.elementor-element-a0e20c3 img{border-radius:12px 12px 12px 12px;}.elementor-4052 .elementor-element.elementor-element-70f75cc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4052 .elementor-element.elementor-element-70f75cc:not(.elementor-motion-effects-element-type-background), .elementor-4052 .elementor-element.elementor-element-70f75cc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#121212;}.elementor-4052 .elementor-element.elementor-element-8e7ebbc{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:5;}@media(min-width:768px){.elementor-4052 .elementor-element.elementor-element-3201b75{--content-width:84%;}.elementor-4052 .elementor-element.elementor-element-3d6976c{--content-width:84%;}.elementor-4052 .elementor-element.elementor-element-6ed53f5{--width:60%;}.elementor-4052 .elementor-element.elementor-element-ffae7d7{--width:70%;}.elementor-4052 .elementor-element.elementor-element-70f75cc{--content-width:84%;}.elementor-4052 .elementor-element.elementor-element-8e7ebbc{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-4052 .elementor-element.elementor-element-f7235b2{--width:100%;}}@media(min-width:2400px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:1440px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-4052 .elementor-element.elementor-element-3d6976c{--gap:0em 5em;--row-gap:0em;--column-gap:5em;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-4052 .elementor-element.elementor-element-f7235b2{--padding-top:0%;--padding-bottom:0%;--padding-left:8%;--padding-right:8%;}}@media(max-width:880px){.elementor-4052 .elementor-element.elementor-element-c0bc112 .elementor-heading-title{font-size:1.5em;}.elementor-4052 .elementor-element.elementor-element-82cd87b .elementor-heading-title{font-size:1.5em;}}@media(max-width:767px){.elementor-4052 .elementor-element.elementor-element-3201b75{--padding-top:2em;--padding-bottom:0em;--padding-left:1em;--padding-right:0em;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-4052 .elementor-element.elementor-element-c0bc112 .elementor-heading-title{font-size:1.5em;}.elementor-4052 .elementor-element.elementor-element-f7235b2{--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-4052 .elementor-element.elementor-element-3d6976c{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:3em 0em;--row-gap:3em;--column-gap:0em;--padding-top:2em;--padding-bottom:0em;--padding-left:1em;--padding-right:1em;}.elementor-4052 .elementor-element.elementor-element-82cd87b .elementor-heading-title{font-size:1.5em;}.elementor-4052 .elementor-element.elementor-element-c59ca9c{font-size:0.85em;}.elementor-4052 .elementor-element.elementor-element-2ca5734 .elementor-button{padding:1em 1em 1em 1em;}}/* Start custom CSS for container, class: .elementor-element-7967351 */@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@400;700;900&display=swap');

:root {
  --nexus-bg-dark: #121212;
  --nexus-font: 'Unbounded', sans-serif;
  --nexus-transition-sharp: all 0.85s cubic-bezier(0.25, 1, 0.5, 1); /* Curva de velocidad mecánica y precisa */
}

/* --- CONTENEDOR HERO --- */
.nexus-hero {
  display: grid;
  grid-template-rows: 1.25fr 0.75fr; /* Proporciones iniciales */
  height: 80vh;
  width: 100%;
  background-color: var(--nexus-bg-dark);
  overflow: hidden;
  position: relative;
  transition: var(--nexus-transition-sharp);
  will-change: grid-template-rows;
}

/* --- INTERACCIÓN DE LÍMITE INTERACTIVO (MORPHING) --- */
/* Al pasar el cursor por el vídeo, el límite se desplaza hacia arriba con un corte limpio */
.nexus-hero:has(.nexus-hero__box--video:hover) {
  grid-template-rows: 0.85fr 1.15fr;
}

/* --- CAJAS --- */
.nexus-hero__box {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* CAJA DE TEXTO */
.nexus-hero__box--text {
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* Distribuye el espacio para centrar el título y fijar la línea abajo */
  align-items: center;
  padding: 2rem 3rem 0 3rem; /* Sin padding inferior para que la línea toque el vídeo */
  z-index: 2;
  background-color: var(--nexus-bg-dark);
}

.nexus-hero__title {
  font-family: var(--nexus-font);
  font-weight: 900;
  text-transform: uppercase;
  color: #ffffff;
  font-size: clamp(2.2rem, 7.8vw, 7rem); /* Escalado matemático perfecto */
  line-height: 0.9;
  letter-spacing: -0.05em;
  text-align: center;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 1.5rem;
}

/* Máscaras tipográficas */
.nexus-hero__word-wrap {
  overflow: hidden;
  display: inline-block;
}

.nexus-hero__word {
  display: inline-block;
  transform: translateY(105%);
  will-change: transform;
}

/* --- LÍNEA DIVISORIA TÉCNICA (EL NUEVO LÍMITE) --- */
.nexus-hero__meta-divider {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding-bottom: 1rem; /* Despegue estético del borde inferior */
  transform-origin: center;
}

.nexus-hero__meta-text {
  font-family: var(--nexus-font);
  font-size: 0.6rem;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.4);
  letter-spacing: 0.15em;
  white-space: nowrap;
}

.nexus-hero__line {
  flex-grow: 1;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.15); /* Línea nítida de alta definición */
  transition: var(--nexus-transition-sharp);
}

/* Reacción de la línea al hacer hover en el vídeo */
.nexus-hero:has(.nexus-hero__box--video:hover) .nexus-hero__line {
  background-color: rgba(255, 255, 255, 0.4); /* Se ilumina al activarse el mecanismo */
}

/* CAJA DE VÍDEO */
.nexus-hero__box--video {
  z-index: 1;
  cursor: pointer;
}

.nexus-hero__video-wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}

.nexus-hero__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.1); /* Efecto Parallax invertido */
  transition: var(--nexus-transition-sharp);
  will-change: transform;
}

.nexus-hero:has(.nexus-hero__box--video:hover) .nexus-hero__video {
  transform: scale(1); /* El vídeo recupera su escala real al expandirse */
}


/* --- OPTIMIZACIÓN RESPONSIVA (Móviles y Tablets) --- */
@media (max-width: 1024px) {
  .nexus-hero {
    height: 85vh;
  }
  .nexus-hero__box--text {
    padding: 2rem 1.5rem 0 1.5rem;
  }
}

@media (max-width: 768px) {
  .nexus-hero {
    height: 90vh;
    grid-template-rows: 1.2fr 0.8fr; /* Estabilizado para evitar saltos táctiles */
  }
  
  /* Desactivamos el morphing por hover en móviles (no hay mouse) */
  .nexus-hero:has(.nexus-hero__box--video:hover) {
    grid-template-rows: 1.2fr 0.8fr;
  }
  
  .nexus-hero__title {
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
  }
  
  /* Simplificamos los metadatos en pantallas pequeñas para mantener la limpieza visual */
  .nexus-hero__meta-text:first-child {
    display: none;
  }
  
  .nexus-hero__meta-divider {
    padding-bottom: 1.5rem;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8e7ebbc *//* Contenedor General del Terminal */
.contact-terminal {
  /* Negro puro para máximo contraste de cierre */
  color: #121212;
  padding: 14vh 0%;
  display: flex;
  flex-direction: column;
  gap: 8vh;
  width: 100%;
}

/* Cabecera */
.contact-terminal__tag {
  font-family: 'Unbounded', sans-serif !important;
  font-size: 1em;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #A2A2A2;
  display: block;
  margin-bottom: 1.5rem;
}

.contact-terminal__title {
  font-family: 'Unbounded', sans-serif !important;
  font-size: 2.5em;
  font-weight: 600 !important;
  letter-spacing: -0.03em;
  color:#FFFFFF!important;
  margin: 0;
  line-height: 1.1;
}

/* Bloque de Enlaces */
.contact-terminal__actions {
  display: flex;
  flex-direction: column;
  width: 100%;
}

/* Enlace Individual */
.terminal-link {
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  padding: 2.5rem 0;
  text-decoration: none !important;
  color: #ffffff !important;
  transition: opacity 0.4s ease, border-color 0.4s ease;
}

/* Último enlace cierra la estructura */
.terminal-link:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

/* Metadatos superiores del enlace (Urbanist) */
.terminal-link__meta {
  display: flex;
  justify-content: space-between;
  font-family: 'Unbounded', sans-serif !important;
  font-size: 1rem;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #A2A2A2;
  margin-bottom: 1rem;
  transition: color 0.4s ease;
}

/* Bloque Principal del Enlace */
.terminal-link__main {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height:1vh;
}

/* El Dato de Contacto Real (Fuerza Técnica en Roboto) */
.terminal-link__value {
  font-family: 'Roboto', sans-serif !important;
  font-size: clamp(1.5rem, 1.5vw, 1.5rem);
  font-weight: 700 !important;
  letter-spacing: -1px;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
}

/* Flecha Cinética */
.terminal-link__arrow {
  font-size: clamp(1.5rem, 1.5vw, 1.5rem);
  font-weight: 300;
  color: rgba(255, 255, 255, 0.2);
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), color 0.5s ease;
  will-change: transform;
}

/* ==========================================================================
   EFECTO INTERACTIVO: ATENUACIÓN SELECTIVA (El secreto de Awwwards)
   ========================================================================== */

/* Cuando pasamos el ratón sobre la lista de acciones... */
.contact-terminal__actions:hover .terminal-link {
  opacity: 0.15; /* Apagamos todos los enlaces por defecto */
}

/* ...excepto al que le estamos haciendo hover directo */
.contact-terminal__actions .terminal-link:hover {
  opacity: 1;
  border-top-color: rgba(255, 255, 255, 0.5);
}

.contact-terminal__actions .terminal-link:hover + .terminal-link {
  border-top-color: rgba(255, 255, 255, 0.5);
}

/* Animaciones internas del elemento activo */
.terminal-link:hover .terminal-link__meta {
  color: #888888;
}

.terminal-link:hover .terminal-link__value {
  transform: translate3d(15px, 0, 0); /* Ligero desplazamiento hacia la derecha */
}

.terminal-link:hover .terminal-link__arrow {
  transform: translate3d(-15px, 0, 0) scale(1.1);
  color: #ffffff;
}

/* ==========================================================================
   RESPONSIVE DESIGN
   ========================================================================== */
@media (max-width: 768px) {
  .contact-terminal {
    padding: 5%;
    gap: 5vh;
    padding-top:4em;
    
  }
  .contact-terminal__tag {
  font-family: 'Unbounded', sans-serif !important;
  font-size: 0.8em;
  text-transform: uppercase;
  letter-spacing: 3px;
  color: #A2A2A2;
  display: block;
  margin-bottom: 1.5rem;
}


  .contact-terminal__title {
  font-family: 'Unbounded', sans-serif !important;
  font-size: 2em;
  font-weight: 600 !important;
  letter-spacing: -0.03em;
  color:#A2A2A2;
  margin: 0;
  line-height: 1.1;
}
  
  .terminal-link {
    padding: 2rem 0;
  }
  
  /* En móviles cancelamos el efecto de apagado general para evitar parpadeos raros al tocar */
  .contact-terminal__actions:hover .terminal-link {
    opacity: 1;
  }
  
  .terminal-link__value {
    font-size: 1em;
    letter-spacing:0.02em;
  }
  
  .terminal-link__arrow {
    font-size: 1.5rem;
    color: #ffffff; /* Siempre visible en móvil */
  }
  .terminal-link__meta {
  display: flex;
  justify-content: space-between;
  font-family: 'Unbounded', sans-serif !important;
  font-size: 0.5em;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #A2A2A2;
  margin-bottom: 1rem;
  transition: color 0.4s ease;
}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-70f75cc *//* NEXUS - Liquid Aurora Mesh Background 
   Optimized for High Performance & Smooth Animations
*/

/* 1. Contenedor Principal */
.nexus-contact-section {
    position: relative;
    background-color: #121212 !important; /* Negro cinematográfico de base */
    overflow: hidden; /* Crucial para que los orbes no generen scroll horizontal */
    z-index: 1;
}

/* Aseguramos que los elementos internos floten por encima del efecto */
.nexus-contact-section > * {
    position: relative;
    z-index: 3;
}

/* 2. Orbes Líquidos (Pseudo-elementos) */
.nexus-contact-section::before,
.nexus-contact-section::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    filter: blur(140px); /* Difuminado extremo para el efecto gas/aurora */
    opacity: 0.35;
    mix-blend-mode: screen; /* Fusión perfecta sobre fondo oscuro */
    pointer-events: none; /* Evita interferir con los clics en los formularios */
    z-index: 2;
    will-change: transform; /* Informa al navegador para usar aceleración por GPU */
}

/* Orbe 1: Amatista Místico */
.nexus-contact-section::before {
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(139, 92, 246, 0.6) 0%, rgba(0, 0, 0, 0) 70%);
    top: -10%;
    left: -10%;
    animation: nexusLiquidMoveOne 25s infinite alternate ease-in-out;
}

/* Orbe 2: Esmeralda Profundo */
.nexus-contact-section::after {
    width: 700px;
    height: 700px;
    background: radial-gradient(circle, rgba(13, 148, 136, 0.5) 0%, rgba(0, 0, 0, 0) 70%);
    bottom: -20%;
    right: -10%;
    animation: nexusLiquidMoveTwo 30s infinite alternate ease-in-out;
}

/* 3. Coreografías de Movimiento (Keyframes optimizados con Transform) */
@keyframes nexusLiquidMoveOne {
    0% {
        transform: translate(0, 0) scale(1) rotate(0deg);
    }
    50% {
        transform: translate(20vw, 15vh) scale(1.2) rotate(180deg);
    }
    100% {
        transform: translate(-5vw, 25vh) scale(0.9) rotate(360deg);
    }
}

@keyframes nexusLiquidMoveTwo {
    0% {
        transform: translate(0, 0) scale(1.1) rotate(0deg);
    }
    50% {
        transform: translate(-25vw, -10vh) scale(0.8) rotate(-120deg);
    }
    100% {
        transform: translate(10vw, -20vh) scale(1.3) rotate(-360deg);
    }
}/* End custom CSS */