.elementor-2472 .elementor-element.elementor-element-9783628{--display:flex;--min-height:100vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.15;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2472 .elementor-element.elementor-element-9783628::before, .elementor-2472 .elementor-element.elementor-element-9783628 > .elementor-background-video-container::before, .elementor-2472 .elementor-element.elementor-element-9783628 > .e-con-inner > .elementor-background-video-container::before, .elementor-2472 .elementor-element.elementor-element-9783628 > .elementor-background-slideshow::before, .elementor-2472 .elementor-element.elementor-element-9783628 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2472 .elementor-element.elementor-element-9783628 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-2472 .elementor-element.elementor-element-05ba369{--display:flex;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-2472 .elementor-element.elementor-element-79df76b{--display:flex;--min-height:0px;}.elementor-2472 .elementor-element.elementor-element-455c783 > .elementor-widget-container{margin:70px 70px 70px 70px;}.elementor-2472 .elementor-element.elementor-element-467f051{--display:flex;}.elementor-2472 .elementor-element.elementor-element-6fbdd4e{text-align:center;}.elementor-2472 .elementor-element.elementor-element-6fbdd4e .elementor-heading-title{font-family:"Coda", Sans-serif;font-weight:400;font-style:italic;color:#000000;}.elementor-2472 .elementor-element.elementor-element-0e8694a > .elementor-widget-container{margin:025px 0px 0px 0px;}.elementor-2472 .elementor-element.elementor-element-0e8694a .elementor-button{font-weight:normal;text-transform:uppercase;border-radius:10px 10px 10px 10px;}.elementor-2472 .elementor-element.elementor-element-9ccae9f{--display:flex;--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;}.elementor-2472 .elementor-element.elementor-element-785fe07{--display:flex;}.elementor-2472 .elementor-element.elementor-element-764d809{--display:flex;}.elementor-2472 .elementor-element.elementor-element-895c330{--display:grid;--min-height:0px;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-2472 .elementor-element.elementor-element-64553ce.elementor-element{--align-self:center;}.elementor-2472 .elementor-element.elementor-element-9b4807f.elementor-element{--align-self:center;}.elementor-2472 .elementor-element.elementor-element-9b4807f{text-align:center;}.elementor-2472 .elementor-element.elementor-element-451ea0d.elementor-element{--align-self:center;}.elementor-2472 .elementor-element.elementor-element-199f939{--display:flex;--min-height:0px;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2472 .elementor-element.elementor-element-dc4d543{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:80px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2472 .elementor-element.elementor-element-79c45e3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:80px;--margin-bottom:100px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2472 .elementor-element.elementor-element-fccb291{--display:flex;--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;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-2472 .elementor-element.elementor-element-05ba369{--width:100%;}.elementor-2472 .elementor-element.elementor-element-467f051{--width:100%;}.elementor-2472 .elementor-element.elementor-element-199f939{--width:100%;}}@media(max-width:1024px){.elementor-2472 .elementor-element.elementor-element-9783628{--min-height:600px;}.elementor-2472 .elementor-element.elementor-element-0e8694a .elementor-button{font-size:16px;}.elementor-2472 .elementor-element.elementor-element-895c330{--grid-auto-flow:row;}.elementor-2472 .elementor-element.elementor-element-dc4d543{--margin-top:70px;--margin-bottom:70px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-2472 .elementor-element.elementor-element-9783628{--min-height:500px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2472 .elementor-element.elementor-element-05ba369{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2472 .elementor-element.elementor-element-0e8694a .elementor-button{font-size:14px;}.elementor-2472 .elementor-element.elementor-element-895c330{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-2472 .elementor-element.elementor-element-dc4d543{--margin-top:40px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;}.elementor-2472 .elementor-element.elementor-element-79c45e3{--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}}/* Start custom CSS for html, class: .elementor-element-455c783 *//* ==========================================
   1. CONTENEDOR PRINCIPAL (HERO SECTION)
   ========================================== */
.hero-section {
  display: flex;
  flex-direction: column; /* Alinea la animación arriba y el H1 abajo */
  justify-content: center;
  align-items: center;
  padding: 60px 20px;
  text-align: center;
  gap: 24px; /* Espacio elegante entre la animación y el H1 */
  font-family: 'Inter', 'Helvetica Neue', sans-serif;
}

/* ==========================================
   2. ESTILOS DEL TEXTO ANIMADO (ARRIBA)
   ========================================== */
.hero-visual-bucle {
  margin-bottom: 10px;
}

.texto-animado-intro {
  font-size: 2.5rem; /* Un poco más pequeño que el H1 para no competir */
  font-weight: 700;
  line-height: 1.3;
  color: #1D1D1F; /* Gris oscuro elegante (cambiar a #F5F5F7 si el fondo es oscuro) */
  margin: 0;
}

/* Estilo de la palabra dinámica y efecto máquina de escribir */
#palabra-animada {
  color: #0052FF; /* Azul eléctrico de Bucletech */
  display: inline-block;
  vertical-align: bottom; /* Evita que la línea salte o se eleve */
  border-right: 3px solid #0052FF; /* Cursor de escritura */
  white-space: nowrap;
  overflow: hidden;
  max-width: 400px;
  
  /* Transición suave para el efecto de escribir y borrar */
  transition: max-width 0.8s steps(15), opacity 0.3s;
  opacity: 1;
  
  /* Animación infinita del parpadeo del cursor */
  animation: parpadeo-cursor 0.6s step-end infinite alternate;
}

/* Clase que activa el JS cuando la palabra se está borrando */
#palabra-animada.borrando {
  max-width: 0;
  opacity: 0;
}

/* ==========================================
   3. ESTILOS DEL H1 ESTÁTICO (SEO - ABAJO)
   ========================================== */
.hero-seo-title {
  max-width: 800px; /* Evita que el H1 sea infinitamente largo de leer */
}

.h1-estatico {
  font-size: 3.5rem; /* El título más grande y jerárquico */
  font-weight: 800;
  line-height: 1.2;
  color: #1D1D1F; /* Mismo color base o ligeramente más oscuro */
  margin: 0 0 16px 0;
  letter-spacing: -0.02em; /* Toque moderno estilo Apple/SaaS */
}

.subtitulo-seo {
  font-size: 1.25rem;
  line-height: 1.6;
  color: #86868B; /* Gris más suave para el subtítulo secundario */
  margin: 0;
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
}

/* ==========================================
   4. ANIMACIONES Y RESPONSIVE
   ========================================== */

/* Animación del parpadeo del cursor */
@keyframes parpadeo-cursor {
  50% { border-color: transparent; }
}

/* Adaptación para tablets y móviles */
@media (max-width: 768px) {
  .hero-section {
    padding: 40px 15px;
    gap: 20px;
  }

  .texto-animado-intro {
    font-size: 1.8rem;
  }

  .h1-estatico {
    font-size: 2.2rem; /* El H1 sigue siendo el más grande en móvil */
  }

  .subtitulo-seo {
    font-size: 1.1rem;
  }

  #palabra-animada {
    border-right-width: 2px;
    max-width: 240px; /* Ajuste para que quepa en pantallas estrechas */
  }

  #palabra-animada.borrando {
    max-width: 0;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-689b812 */.contenedor-logos-titulo {
  text-align: center;
  padding: 10px 0;
}

.titulo-logos-shimmer {
  font-family: 'Inter', sans-serif;
  font-size: 0.85rem; /* Tamaño pequeño tipo Notion */
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px; /* Letras un poco separadas, estilo premium */
  display: inline-block;
  margin: 0;
  
  /* Color base gris oscuro/medio */
  color: rgba(29, 29, 31, 0.4); /* Si tu fondo es oscuro usa: rgba(245, 245, 247, 0.4) */
  
  /* Creamos el degradado que simula el haz de luz */
  background: linear-gradient(
    to right, 
    rgba(29, 29, 31, 0.4) 0%, 
    rgba(29, 29, 31, 0.4) 35%, 
    #0052FF 50%, /* Destello en el color azul de Bucletech */
    rgba(29, 29, 31, 0.4) 65%, 
    rgba(29, 29, 31, 0.4) 100%
  );
  
  /* Nota para fondo oscuro: cambia los tres "rgba(29, 29, 31, 0.4)" de arriba por "rgba(245, 245, 247, 0.4)" */

  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  
  /* Animación en bucle */
  animation: barrido-luz 5s linear infinite;
}

@keyframes barrido-luz {
  to {
    background-position: 200% center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f7ca424 *//* Contenedor de las tarjetas */
.servicios-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  max-width: 1100px;
  margin: 40px auto 0 auto;
  padding: 0 20px;
}

/* Tarjeta estilo Notion / SaaS moderno */
.servicio-tarjeta {
  background: #FFFFFF; /* Blanco puro */
  border: 1px solid #E9E9E6; /* Borde Notion muy fino */
  border-radius: 12px; /* Esquinas suavizadas */
  padding: 30px;
  text-align: left; /* Alineado a la izquierda para un look más corporativo */
  transition: all 0.2s ease-in-out;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02), 0 4px 12px rgba(0, 0, 0, 0.03);
}

/* Efecto Hover sutil */
.servicio-tarjeta:hover {
  transform: translateY(-4px);
  border-color: #0052FF; /* Tu azul eléctrico al pasar el ratón */
  box-shadow: 0 8px 24px rgba(0, 82, 255, 0.08);
}

/* Contenedor del Icono profesional */
.servicio-icono-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background-color: #F0F4FF; /* Fondo azul muy clarito */
  color: #0052FF; /* Icono en tu azul de marca */
  margin-bottom: 20px;
  transition: background-color 0.2s;
}

.servicio-tarjeta:hover .servicio-icono-wrapper {
  background-color: #0052FF;
  color: #FFFFFF; /* Invierte colores al hacer hover */
}

/* Tipografías Notion */
.servicio-titulo {
  font-family: 'Inter', sans-serif;
  font-size: 1.3rem;
  font-weight: 700;
  color: #1A1A18; /* Casi negro de Notion */
  margin: 0 0 12px 0;
}

.servicio-descripcion {
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  line-height: 1.6;
  color: #5F5F5C; /* Gris suave de Notion para el cuerpo de texto */
  margin: 0;
}/* ==========================================
   ESTILOS PARA EL H2 DE SERVICIOS (CENTRADO)
   ========================================== */
.servicios-seccion {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 60px 20px;
  box-sizing: border-box;
}

.servicios-titulo-seccion {
  font-family: 'Inter', sans-serif;
  font-size: 2.5rem; /* Tamaño imponente pero elegante */
  font-weight: 800;
  color: #1A1A18; /* El casi negro de Notion */
  text-align: center; /* ¡La clave para centrarlo! */
  margin: 0 auto 40px auto; /* Centra el bloque y le da espacio abajo */
  max-width: 700px; /* Evita que el título se estire demasiado a lo ancho */
  line-height: 1.25;
  letter-spacing: -0.02em;
}

/* Ajuste opcional para móviles */
@media (max-width: 768px) {
  .servicios-titulo-seccion {
    font-size: 1.8rem;
    margin-bottom: 30px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a815ae6 *//* ==========================================
   ESTILOS SECCIÓN PROCESO (NOTION STYLE)
   ========================================== */
.proceso-seccion {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 80px 20px;
  box-sizing: border-box;
  font-family: 'Inter', sans-serif;
}

/* Encabezados centrados */
.proceso-titulo-seccion {
  font-size: 2.5rem;
  font-weight: 800;
  color: #1A1A18; /* Casi negro Notion */
  text-align: center;
  margin: 0 auto 12px auto;
  max-width: 700px;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

.proceso-subtitulo {
  font-size: 1.15rem;
  line-height: 1.6;
  color: #5F5F5C; /* Gris suave */
  text-align: center;
  max-width: 600px;
  margin: 0 auto 50px auto;
}

/* Grid del Proceso */
.proceso-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
}

/* Tarjeta individual del paso */
.proceso-paso {
  background: #FFFFFF;
  border: 1px solid #E9E9E6; /* Borde ultra fino de Notion */
  border-radius: 12px;
  padding: 35px 30px;
  position: relative;
  transition: all 0.2s ease-in-out;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.01), 0 4px 12px rgba(0, 0, 0, 0.02);
}

.proceso-paso:hover {
  transform: translateY(-4px);
  border-color: #0052FF; /* Tu azul eléctrico */
  box-shadow: 0 8px 24px rgba(0, 82, 255, 0.05);
}

/* Los números grandes y elegantes de Notion */
.proceso-numero {
  font-size: 3rem;
  font-weight: 900;
  color: #E9E9E6; /* Gris muy clarito de fondo */
  line-height: 1;
  margin-bottom: 15px;
  font-feature-settings: "tnum"; /* Números tabulares alineados */
}

/* Título de cada paso */
.proceso-paso-titulo {
  font-size: 1.25rem;
  font-weight: 700;
  color: #1A1A18;
  margin: 0 0 12px 0;
}

/* Descripción */
.proceso-paso-desc {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #5F5F5C;
  margin: 0;
}

/* ==========================================
   RESPONSIVE PARA MÓVILES
   ========================================== */
@media (max-width: 768px) {
  .proceso-seccion {
    padding: 50px 15px;
  }

  .proceso-titulo-seccion {
    font-size: 1.8rem;
  }

  .proceso-subtitulo {
    font-size: 1rem;
    margin-bottom: 35px;
  }

  .proceso-paso {
    padding: 25px 20px;
  }

  .proceso-numero {
    font-size: 2.5rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fb1f97f *//* ==========================================
   ESTILOS SECCIÓN CTA (NOTION / SAAS STYLE)
   ========================================== */
.cta-seccion {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 60px 20px 100px 20px; /* Más espacio abajo para cerrar la web limpiamente */
  box-sizing: border-box;
  font-family: 'Inter', sans-serif;
}

/* Caja contenedora del CTA */
.cta-caja {
  background: #FBFBFA; /* Fondo hueso/gris muy suave estilo Notion */
  border: 1px solid #E9E9E6; /* Borde ultra sutil */
  border-radius: 16px; /* Bordes elegantemente redondeados */
  padding: 60px 40px;
  text-align: center; /* Centra todo el contenido internamente */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.01), 0 10px 30px rgba(0, 0, 0, 0.02);
  transition: border-color 0.3s ease;
}

.cta-caja:hover {
  border-color: #0052FF; /* Iluminación sutil con tu azul de marca al hacer hover */
}

/* Título de Acción (H2 Centrado por defecto) */
.cta-titulo {
  font-size: 2.2rem;
  font-weight: 800;
  color: #1A1A18;
  margin: 0;
  max-width: 700px;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

/* Subtítulo descriptivo */
.cta-subtitulo {
  font-size: 1.1rem;
  line-height: 1.6;
  color: #5F5F5C;
  max-width: 600px;
  margin: 0 0 10px 0;
}

.cta-subtitulo strong {
  color: #0052FF; /* Destacamos sutilmente las palabras clave con tu color corporativo */
  font-weight: 600;
}

/* Botón CTA minimalista pero imponente */
.cta-boton {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-color: #0052FF; /* Tu azul de marca */
  color: #FFFFFF !important; /* Fuerza color blanco si tu tema tiene conflictos */
  text-decoration: none;
  font-size: 1.05rem;
  font-weight: 600;
  padding: 14px 28px;
  border-radius: 8px;
  transition: all 0.2s ease-in-out;
  box-shadow: 0 4px 14px rgba(0, 82, 255, 0.15);
}

.cta-boton:hover {
  background-color: #0040D6; /* Azul ligeramente más oscuro al pasar el cursor */
  transform: translateY(-2px); /* Pequeño salto hacia arriba */
  box-shadow: 0 6px 20px rgba(0, 82, 255, 0.25);
}

/* Animación interactiva en la flecha del botón */
.cta-flecha {
  display: inline-block;
  transition: transform 0.2s ease;
}

.cta-boton:hover .cta-flecha {
  transform: translateX(4px); /* Desplaza la flecha a la derecha en hover */
}

/* ==========================================
   RESPONSIVE PARA MÓVILES
   ========================================== */
@media (max-width: 768px) {
  .cta-seccion {
    padding: 40px 15px 60px 15px;
  }

  .cta-caja {
    padding: 40px 20px;
  }

  .cta-titulo {
    font-size: 1.75rem;
  }

  .cta-subtitulo {
    font-size: 1rem;
  }

  .cta-boton {
    width: 100%; /* El botón se hace grande en móviles para facilitar el toque con el dedo */
    box-sizing: border-box;
  }
}/* End custom CSS */