.elementor-672 .elementor-element.elementor-element-84942dd{--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;}.elementor-672 .elementor-element.elementor-element-dc347ae{width:var( --container-widget-width, 100.871% );max-width:100.871%;--container-widget-width:100.871%;--container-widget-flex-grow:0;}.elementor-672 .elementor-element.elementor-element-dc347ae.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-672 .elementor-element.elementor-element-6e37ce9{--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;}.elementor-672 .elementor-element.elementor-element-8804114{width:100%;max-width:100%;margin:-6px 0px calc(var(--kit-widget-spacing, 0px) + -4px) 0px;padding:0px 0px -10px 0px;}.elementor-672 .elementor-element.elementor-element-5dfc431{--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;}.elementor-672 .elementor-element.elementor-element-5dfc431.e-con{--align-self:flex-start;--flex-grow:1;--flex-shrink:0;}.elementor-672 .elementor-element.elementor-element-dea1ef7{width:var( --container-widget-width, 101.43% );max-width:101.43%;--container-widget-width:101.43%;--container-widget-flex-grow:0;text-align:center;}.elementor-672 .elementor-element.elementor-element-dea1ef7 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:12px -8px 12px 5px;border-radius:21px 21px 21px 21px;}.elementor-672 .elementor-element.elementor-element-dea1ef7.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-672 .elementor-element.elementor-element-dea1ef7 img{max-width:100%;}.elementor-672 .elementor-element.elementor-element-03c346f{--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;--justify-content:center;}.elementor-widget-tl-post-title .templately-heading-title{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-672 .elementor-element.elementor-element-d614e82{width:var( --container-widget-width, 82% );max-width:82%;--container-widget-width:82%;--container-widget-flex-grow:0;}.elementor-672 .elementor-element.elementor-element-d614e82.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-672 .elementor-element.elementor-element-d614e82 .templately-heading-title{color:#FFFFFF;font-family:"Poppins", Sans-serif;font-weight:600;}.elementor-672 .elementor-element.elementor-element-72822a2{--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;}.elementor-widget-theme-post-content{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-672 .elementor-element.elementor-element-014b078{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:center;}.elementor-672 .elementor-element.elementor-element-014b078.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-672 .elementor-element.elementor-element-d389498{--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;}.elementor-672 .elementor-element.elementor-element-05c1868{--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;--justify-content:center;}.elementor-672 .elementor-element.elementor-element-9c88020{width:var( --container-widget-width, 80.059% );max-width:80.059%;--container-widget-width:80.059%;--container-widget-flex-grow:0;}.elementor-672 .elementor-element.elementor-element-9c88020.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-672 .elementor-element.elementor-element-461eba4{--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;}.elementor-672 .elementor-element.elementor-element-cf7f1d7{--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;--justify-content:center;}.elementor-672 .elementor-element.elementor-element-cdd7028{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-672 .elementor-element.elementor-element-cdd7028.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-672 .elementor-element.elementor-element-b8c0f01{--display:flex;}body.elementor-page-672:not(.elementor-motion-effects-element-type-background), body.elementor-page-672 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #000000 0%, #000000 100%);}@media(min-width:768px){.elementor-672 .elementor-element.elementor-element-5dfc431{--width:45.792%;}}@media(max-width:767px){.elementor-672 .elementor-element.elementor-element-dc347ae.elementor-element{--align-self:center;}.elementor-672 .elementor-element.elementor-element-cdd7028{width:100%;max-width:100%;margin:0vw 0vw calc(var(--kit-widget-spacing, 0px) + 0vw) -8vw;padding:31vw 31vw 11vw -1vw;}.elementor-672 .elementor-element.elementor-element-cdd7028.elementor-element{--align-self:center;--order:0;--flex-grow:0;--flex-shrink:0;}}/* Start custom CSS for html, class: .elementor-element-dc347ae *//* ==========================================
   RESET ELEMENTOR — TOTALMENTE AISLADO
========================================== */
#as9-header-wrapper .elementor-widget-wrap,
#as9-header-wrapper .elementor-widget-container,
#as9-header-wrapper .elementor-element,
#as9-header-wrapper .elementor-element-populated {
  display: contents !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  flex: none !important;
}

/* ==========================================
   HACK DE ESCAPE DEL CONTENEDOR
========================================== */
#as9-custom-header {
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  height: 90px !important;
  background: rgba(7, 5, 15, 0.95) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  padding: 0 3rem !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-bottom: 1px solid rgba(169, 85, 247, 0.15) !important;
  box-sizing: border-box !important;
}

/* ==========================================
   SECCIONES DEL HEADER
========================================== */
#as9-header-left {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

#as9-header-center {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

#as9-header-right {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0.8rem !important;
}

/* ==========================================
   COMPONENTES INTERNOS
========================================== */
#as9-header-wrapper .menu-btn {
  background: rgba(25, 8, 25, 0.8) !important;
  border: none !important;
  cursor: pointer !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 10px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  position: relative !important;
  flex-shrink: 0 !important;
}

#as9-header-wrapper .menu-btn::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: 10px !important;
  padding: 1px !important;
  background: linear-gradient(135deg, #f97316, #a855f7) !important;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0) !important;
  -webkit-mask-composite: xor !important;
  mask-composite: exclude !important;
  pointer-events: none !important;
}

#as9-header-wrapper .menu-btn span {
  display: block !important;
  width: 18px !important;
  height: 2px !important;
  background: #fff !important;
  border-radius: 2px !important;
  flex-shrink: 0 !important;
}

#as9-header-wrapper .logo-img {
  height: 62px !important;
  width: auto !important;
  object-fit: contain !important;
  display: block !important;
}

#as9-header-wrapper .social-btn {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  border: 0.5px solid rgba(169, 85, 247, 0.3) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(25, 8, 25, 0.5) !important;
  flex-shrink: 0 !important;
}

#as9-header-wrapper .social-btn svg {
  width: 16px !important;
  height: 16px !important;
  fill: rgba(255, 255, 255, 0.7) !important;
}

/* ==========================================
   OVERLAY
========================================== */
#as9-menuOverlay {
  position: fixed !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.6) !important;
  z-index: 99998 !important;
  opacity: 0;
  pointer-events: none;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  transition: opacity 0.4s ease !important;
}
#as9-menuOverlay.open {
  opacity: 1 !important;
  pointer-events: all !important;
}

/* ==========================================
   SIDEBAR — REDISEÑO PREMIUM
========================================== */
#as9-sidebar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 300px !important;
  height: 100% !important;
  background: rgba(8, 4, 18, 0.98) !important;
  backdrop-filter: blur(30px) !important;
  -webkit-backdrop-filter: blur(30px) !important;
  border-right: 1px solid rgba(169, 85, 247, 0.12) !important;
  z-index: 99999 !important;
  transform: translateX(-100%) !important;
  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
#as9-sidebar.open {
  transform: translateX(0) !important;
}

/* Línea de acento superior */
#as9-sidebar::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, #f97316, #a855f7) !important;
  z-index: 1 !important;
}

/* HEADER DEL SIDEBAR */
#as9-header-wrapper .sidebar-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 2rem 2rem 1.5rem !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  margin-top: 2px !important; /* Por la línea de acento */
}

#as9-header-wrapper .sidebar-tag {
  font-family: sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 0.25em !important;
  text-transform: uppercase !important;
  color: rgba(169, 85, 247, 0.7) !important;
  font-weight: 600 !important;
}

#as9-header-wrapper .sidebar-close {
  background: rgba(255, 255, 255, 0.05) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: rgba(255, 255, 255, 0.5) !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  font-size: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
}
#as9-header-wrapper .sidebar-close:hover {
  background: rgba(249, 115, 22, 0.15) !important;
  border-color: rgba(249, 115, 22, 0.3) !important;
  color: #f97316 !important;
}

/* NAV */
#as9-header-wrapper #as9-sidebar nav {
  flex: 1 !important;
  padding: 1rem 0 !important;
}

#as9-header-wrapper #as9-sidebar nav ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

#as9-header-wrapper #as9-sidebar nav ul li {
  width: 100% !important;
}

#as9-header-wrapper #as9-sidebar nav ul li a {
  display: flex !important;
  align-items: center !important;
  padding: 1rem 2rem !important;
  font-family: sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.55) !important;
  text-decoration: none !important;
  letter-spacing: 0.02em !important;
  border-left: 2px solid transparent !important;
  transition: all 0.25s ease !important;
  position: relative !important;
}

#as9-header-wrapper #as9-sidebar nav ul li a:hover {
  color: #fff !important;
  background: rgba(169, 85, 247, 0.06) !important;
  border-left-color: #a855f7 !important;
  padding-left: 2.4rem !important;
}

#as9-header-wrapper #as9-sidebar nav ul li.active a {
  color: #fff !important;
  border-left-color: #f97316 !important;
  background: rgba(249, 115, 22, 0.06) !important;
}

/* FOOTER DEL SIDEBAR */
#as9-header-wrapper .sidebar-footer {
  padding: 1.5rem 2rem !important;
  border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
}

#as9-header-wrapper .sidebar-footer p {
  font-family: sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.2em !important;
  color: rgba(255, 255, 255, 0.2) !important;
  text-transform: uppercase !important;
  margin: 0 !important;
}

/* ==========================================
   MÓVIL
========================================== */
@media (max-width: 768px) {
  #as9-custom-header {
    height: 75px !important;
    padding: 0 1rem !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  #as9-header-left {
    flex: 1 !important;
    display: flex !important;
    justify-content: flex-start !important;
  }
  #as9-header-center {
    flex: 0 0 auto !important;
    display: flex !important;
    justify-content: center !important;
  }
  #as9-header-right {
    flex: 1 !important;
    display: flex !important;
    justify-content: flex-end !important;
    gap: 0.4rem !important;
  }

  #as9-header-wrapper .logo-img  { height: 38px !important; }
  #as9-header-wrapper .menu-btn  { width: 38px !important; height: 38px !important; }
  #as9-header-wrapper .social-btn { width: 30px !important; height: 30px !important; }
  #as9-header-wrapper .social-btn svg { width: 13px !important; height: 13px !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5dfc431 *//* --- 1. CONTENEDOR: CASI TODO EL ANCHO DE LA PANTALLA --- */
.elementor-672 .elementor-element.elementor-element-5dfc431 {
    width: 95vw !important; /* Ocupa el 95% del ancho total de la pantalla */
    max-width: 1300px !important; /* Límite para que no se deforme en monitores gigantes */
    position: relative !important;
    left: auto !important;
    margin-left: 50% !important;
    transform: translateX(-50%) !important; /* Centrado perfecto a prueba de balas */
    margin-top: 40px !important;
    margin-bottom: 40px !important;
}

/* --- 2. IMAGEN: FORMATO RECTANGULAR TIPO BANNER --- */
.elementor-672 .elementor-element.elementor-element-5dfc431 img,
.elementor-672 .elementor-element.elementor-element-5dfc431 .elementor-image img {
    width: 100% !important;
    height: 480px !important; /* Altura fija para hacerla bien apaisada */
    max-width: 100% !important;
    object-fit: cover !important; /* Clave: Recorta la imagen para llenar el rectángulo sin achatarla */
    object-position: center !important; /* Muestra siempre el centro de la foto */
    border-radius: 20px !important; /* Bordes redondeados tech */
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.6) !important; /* Sombra profunda */
    display: block !important;
}

/* --- 3. ADAPTACIÓN PARA MÓVILES --- */
@media (max-width: 768px) {
    .elementor-672 .elementor-element.elementor-element-5dfc431 {
        width: 92vw !important; /* Deja un poquito más de aire a los costados en celu */
        margin-top: 25px !important;
        margin-bottom: 25px !important;
    }
    .elementor-672 .elementor-element.elementor-element-5dfc431 img,
    .elementor-672 .elementor-element.elementor-element-5dfc431 .elementor-image img {
        height: 250px !important; /* Altura menor para que no te tape toda la pantalla del celu */
        border-radius: 12px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-03c346f */.elementor-672 .elementor-element.elementor-element-03c346f h1,
.elementor-672 .elementor-element.elementor-element-03c346f .elementor-heading-title {
    color: #ffffff !important;
    font-size: 56px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    text-align: center !important;
}

/* Subrayado tech con degradé y centrado */
.elementor-672 .elementor-element.elementor-element-03c346f h1::after,
.elementor-672 .elementor-element.elementor-element-03c346f .elementor-heading-title::after {
    content: '';
    display: block;
    width: 70px;
    height: 3px;
    background: linear-gradient(90deg, #ff8c37, #9b8edb) !important;
    margin: 18px auto 0 auto !important;
    border-radius: 2px;
    box-shadow: 0 0 10px rgba(155, 142, 219, 0.4);
}

@media (max-width: 768px) {
    .elementor-672 .elementor-element.elementor-element-03c346f h1,
    .elementor-672 .elementor-element.elementor-element-03c346f .elementor-heading-title {
        font-size: 36px !important;
    }
    
    .elementor-672 .elementor-element.elementor-element-03c346f h1::after,
    .elementor-672 .elementor-element.elementor-element-03c346f .elementor-heading-title::after {
        width: 50px;
    }
}/* End custom CSS */
/* Start custom CSS for theme-post-content, class: .elementor-element-014b078 *//* Contenedor principal: una tarjeta tech con degradé y bordes sutiles */
.elementor-672 .elementor-element.elementor-element-014b078 {
    background: linear-gradient(145deg, rgba(22, 22, 32, 0.95), rgba(12, 12, 18, 0.98)) !important;
    border: 1px solid rgba(155, 142, 219, 0.25) !important;
    border-radius: 16px !important;
    padding: 45px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.8), 0 0 30px rgba(155, 142, 219, 0.05) !important;
    backdrop-filter: blur(10px);
}

/* Primer párrafo destacado con barra lateral naranja */
.elementor-672 .elementor-element.elementor-element-014b078 p:first-of-type {
    font-size: 19px !important;
    color: #f1f5f9 !important;
    line-height: 1.7 !important;
    margin-bottom: 28px !important;
    border-left: 3px solid #ff8c37;
    padding-left: 16px;
}

/* Párrafos normales */
.elementor-672 .elementor-element.elementor-element-014b078 p {
    color: #94a3b8 !important;
    font-size: 17px !important;
    line-height: 1.8 !important;
    margin-bottom: 22px !important;
}

/* Títulos internos (H2) */
.elementor-672 .elementor-element.elementor-element-014b078 h2 {
    color: #ffffff !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    margin-top: 45px !important;
    margin-bottom: 18px !important;
    letter-spacing: -0.5px;
    border-bottom: 1px solid rgba(155, 142, 219, 0.15);
    padding-bottom: 10px;
}

/* Títulos internos (H3) */
.elementor-672 .elementor-element.elementor-element-014b078 h3 {
    color: #9b8edb !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    margin-top: 35px !important;
    margin-bottom: 14px !important;
}

/* Citas (Blockquotes) dentro de la tarjeta */
.elementor-672 .elementor-element.elementor-element-014b078 blockquote {
    background: rgba(155, 142, 219, 0.05) !important;
    border: 1px solid rgba(155, 142, 219, 0.2) !important;
    border-left: 4px solid #ff8c37 !important;
    border-radius: 10px !important;
    padding: 24px !important;
    margin: 30px 0 !important;
    color: #ffffff !important;
}

/* Enlaces */
.elementor-672 .elementor-element.elementor-element-014b078 a {
    color: #9b8edb !important;
    text-decoration: underline;
    text-underline-offset: 4px;
    transition: color 0.2s ease;
}

.elementor-672 .elementor-element.elementor-element-014b078 a:hover {
    color: #ff8c37 !important;
}

/* Listas */
.elementor-672 .elementor-element.elementor-element-014b078 ul li, .elementor-672 .elementor-element.elementor-element-014b078 ol li {
    color: #94a3b8 !important;
    margin-bottom: 10px !important;
    line-height: 1.6 !important;
}

/* Imágenes dentro del post */
.elementor-672 .elementor-element.elementor-element-014b078 img {
    border-radius: 10px !important;
    border: 1px solid rgba(155, 142, 219, 0.2) !important;
    margin: 30px 0 !important;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-9c88020 *//* --- ESCRITORIO --- */
#as9-newsletter-form {
  /* 👇 EL TRUCO: Cambiá estos dos números para estirarlo lo que quieras 👇 */
  width: 140% !important;        /* Cuánto se estira (Prueba con 120%, 130%, 140%) */
  margin-left: -21% !important;  /* SIEMPRE la mitad del exceso en negativo (Si usás 130%, acá va -15%) */
  
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  box-sizing: border-box !important;
  background: linear-gradient(135deg, #111 0%, #1a1a1a 50%, #0f0f0f 100%) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 20px !important;
  padding: 48px 6% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 48px !important;
  position: relative !important;
  overflow: hidden !important;
  font-family: 'Poppins', sans-serif !important;
}

/* Efecto de luz de fondo */
#as9-newsletter-form::before {
  content: '' !important;
  position: absolute !important;
  top: -60px !important; 
  right: -60px !important;
  width: 220px !important; 
  height: 220px !important;
  background: radial-gradient(circle, rgba(99,202,183,0.12) 0%, transparent 70%) !important;
  pointer-events: none !important;
}

#as9-newsletter-form .nl-left { 
  flex: 1 !important; 
  min-width: 0 !important; 
  z-index: 2 !important;
}

#as9-newsletter-form .nl-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(99,202,183,0.12) !important;
  border: 1px solid rgba(99,202,183,0.25) !important;
  color: #63cab7 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 5px 12px !important;
  border-radius: 100px !important;
  margin-bottom: 16px !important;
}

#as9-newsletter-form .nl-badge::before {
  content: '' !important;
  width: 6px !important; 
  height: 6px !important;
  background: #63cab7 !important;
  border-radius: 50% !important;
  animation: nlpulse 2s infinite !important;
}

@keyframes nlpulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(0.8); }
}

#as9-newsletter-form .nl-title {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  line-height: 1.3 !important;
  margin-bottom: 10px !important;
}

#as9-newsletter-form .nl-title span { 
  color: #63cab7 !important; 
}

#as9-newsletter-form .nl-sub {
  font-size: 14px !important;
  font-weight: 300 !important;
  color: rgba(255,255,255,0.5) !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

#as9-newsletter-form .nl-right { 
  flex-shrink: 0 !important; 
  width: 340px !important; 
  z-index: 2 !important;
}

#as9-newsletter-form .nl-input-row {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
  margin-bottom: 12px !important;
}

#as9-newsletter-form .nl-input {
  flex: 1 !important;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 10px !important;
  padding: 14px 18px !important;
  color: #ffffff !important;
  outline: none !important;
  transition: border-color 0.2s, background 0.2s !important;
}

#as9-newsletter-form .nl-input::placeholder { 
  color: rgba(255,255,255,0.3) !important; 
}

#as9-newsletter-form .nl-input:focus {
  border-color: rgba(99,202,183,0.4) !important;
  background: rgba(255,255,255,0.08) !important;
}

#as9-newsletter-form .nl-btn {
  background: #63cab7 !important;
  color: #0a0a0a !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 14px 22px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  transition: background 0.2s, transform 0.15s !important;
}

#as9-newsletter-form .nl-btn:hover {
  background: #7dd8c7 !important;
  transform: translateY(-1px) !important;
}

#as9-newsletter-form .nl-rgpd {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

#as9-newsletter-form .nl-rgpd input[type="checkbox"] {
  margin-top: 2px !important;
  width: 15px !important; 
  height: 15px !important;
  flex-shrink: 0 !important;
  accent-color: #63cab7 !important;
}

#as9-newsletter-form .nl-rgpd label {
  font-size: 11px !important;
  color: rgba(255,255,255,0.35) !important;
  line-height: 1.5 !important;
}

#as9-newsletter-form .nl-rgpd label a { 
  color: #63cab7 !important; 
  text-decoration: underline !important;
}

/* --- MÓVIL --- */
@media (max-width: 768px) {
  #as9-newsletter-form {
    width: 100% !important; /* En móvil vuelve a su ancho normal para que no rompa el scroll horizontal */
    margin-left: 0 !important;
    flex-direction: column !important;
    padding: 30px 25px !important;
    gap: 24px !important;
    border-radius: 0 !important;
  }
  
  #as9-newsletter-form .nl-right { 
    width: 100% !important; 
  }
  
  #as9-newsletter-form .nl-badge { 
    margin: 0 auto 16px auto !important; 
  }
  
  #as9-newsletter-form .nl-title { 
    text-align: center !important; 
  }
  
  #as9-newsletter-form .nl-sub { 
    text-align: center !important; 
  }
  
  #as9-newsletter-form .nl-input-row { 
    flex-direction: column !important; 
  }
  
  #as9-newsletter-form .nl-input, 
  #as9-newsletter-form .nl-btn { 
    width: 100% !important; 
  }
  
  #as9-newsletter-form .nl-rgpd { 
    justify-content: center !important; 
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-cdd7028 *//* ==========================================
   E STRUCTURA GENERAL Y ESCRITORIO (DESKTOP)
========================================== */
.elementor-672 .elementor-element.elementor-element-cdd7028,
.elementor-672 .elementor-element.elementor-element-cdd7028 .elementor-widget-container,
.elementor-672 .elementor-element.elementor-element-cdd7028 .custom-footer {
  width: 85vw !important;
  max-width: 85vw !important;
  min-width: 85vw !important;
  box-sizing: border-box !important;
  margin: 0 auto !important;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .custom-footer {
  background-color: #07050f;
  color: #f3f4f6;
  padding: 60px 40px;
  font-family: 'Poppins', sans-serif;
  position: relative;
  box-sizing: border-box;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .custom-footer::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, #f97316, #a855f7, transparent);
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-grid {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
  width: 100%;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-brand { flex: 2; }
.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col { flex: 1; }

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-brand .logo {
  font-size: 20px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 16px;
  color: #ffffff;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-brand .logo span {
  color: rgba(169, 85, 247, 0.9);
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-brand p {
  color: rgba(200, 180, 240, 0.45);
  font-size: 13px;
  line-height: 1.75;
  margin-bottom: 24px;
  max-width: 280px;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .social-links {
  display: flex;
  gap: 10px;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .social-links a {
  color: rgba(200, 180, 240, 0.6);
  background: transparent;
  border: 0.5px solid rgba(169, 85, 247, 0.3);
  width: 36px; height: 36px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
  text-decoration: none;
  font-size: 13px; font-weight: 600;
  transition: all 0.2s ease;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .social-links a:hover {
  color: #fff;
  border-color: rgba(249, 115, 22, 0.6);
  background: rgba(249, 115, 22, 0.08);
  transform: translateY(-2px);
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col h4 {
  color: rgba(249, 115, 22, 0.7);
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin-bottom: 20px;
  margin-top: 0;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col ul {
  list-style: none;
  padding: 0; margin: 0;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col ul li {
  margin-bottom: 12px;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col ul li a {
  color: rgba(200, 180, 240, 0.45);
  text-decoration: none;
  font-size: 13px;
  transition: color 0.2s ease;
  display: inline-block;
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col ul li a:hover { color: #fff; }

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-bottom {
  border-top: 0.5px solid rgba(169, 85, 247, 0.12);
  margin-top: 50px;
  padding-top: 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  font-size: 13px;
  color: rgba(200, 180, 240, 0.3);
}

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-bottom p { margin: 0; }

.elementor-672 .elementor-element.elementor-element-cdd7028 .footer-bottom .badge {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(200, 180, 240, 0.3);
}

/* ==========================================
   ADAPTACIÓN MÓVIL (SÉGURA Y SIN PORCENTAJES)
========================================== */
@media (max-width: 768px) {
  /* Anulamos los bloqueos de columnas de Elementor */
  .elementor-672 .elementor-element.elementor-element-cdd7028,
  .elementor-672 .elementor-element.elementor-element-cdd7028 .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Forzamos tamaño con VW nativo y el corrector de centrado absoluto */
  .elementor-672 .elementor-element.elementor-element-cdd7028 .custom-footer {
    width: 92vw !important;
    max-width: 92vw !important;
    min-width: 92vw !important;
    
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
    padding: 40px 20px 30px 20px !important;
    box-sizing: border-box !important;
  }

  /* Rediseño del Grid: La marca arriba sola, los links abajo en 3 columnas */
  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important; /* Forzamos las 3 columnas en horizontal */
    gap: 32px 10px !important; /* Espacio vertical y horizontal controlado */
    width: 100% !important;
  }

  /* El bloque de la marca se estira por encima de las 3 columnas de links */
  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-grid .footer-brand {
    grid-column: span 3 !important;
    text-align: left !important;
    padding-bottom: 12px;
  }

  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-brand p {
    max-width: 100% !important;
    font-size: 13px !important;
  }
  
  .elementor-672 .elementor-element.elementor-element-cdd7028 .social-links {
    justify-content: flex-start !important;
  }

  /* Ajustes estéticos finos para los links en paralelo */
  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col h4 {
    font-size: 11px !important;
    margin-bottom: 14px !important;
    letter-spacing: 0.1em !important;
  }

  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col ul li {
    margin-bottom: 10px !important;
  }

  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-col ul li a {
    font-size: 12px !important; /* Achicamos un pelín para evitar que se corten palabras largas */
  }

  /* Modificaciones de la barra inferior */
  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-bottom {
    grid-column: span 3 !important;
    margin-top: 40px !important;
    padding-top: 24px !important;
    flex-direction: column !important;
    gap: 12px !important;
    align-items: center !important; /* Centramos el copyright y el badge al final */
    text-align: center !important;
  }
  
  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-bottom p {
    font-size: 12px !important;
  }
  
  .elementor-672 .elementor-element.elementor-element-cdd7028 .footer-bottom .badge {
    font-size: 10px !important;
  }
}/* End custom CSS */