.elementor-kit-16{--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:"Montserrat";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:500;background-color:#0B1220;}.elementor-kit-16 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 *//* ============================================
   FIX GLOBAL: overflow e fundo
   ============================================ */
html, body {
  background-color: #0B1220; /* cor base do fundo */
  width: 100%;
  overflow-x: clip;          /* corta rolagem lateral moderna */
}
@supports not (overflow-x: clip) {
  html, body { overflow-x: hidden; } /* fallback p/ navegadores antigos */
}

/* Elementor wrappers que às vezes criam overflow */
.site, .site-content, .elementor, .elementor-section,
.elementor-container, .elementor-location-header, .elementor-location-footer {
  overflow-x: hidden;
}

/* ============================================
   HERO NEURO-TECH
   ============================================ */
.tl-hero {
  position: relative;
  color: #E5E7EB;
  overflow: hidden;   /* corta só o que vaza dessa seção */
  isolation: isolate;
}

/* Grid de fundo (ajustado para não criar overflow lateral) */
.tl-hero--neo::before {
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(to right, rgba(148,163,184,.10) 1px, transparent 1px) 0 0 / 32px 32px,
    linear-gradient(to bottom, rgba(148,163,184,.08) 1px, transparent 1px) 0 0 / 32px 32px;
  -webkit-mask-image: radial-gradient(120% 80% at 50% 12%, rgba(0,0,0,.9), transparent 70%);
          mask-image: radial-gradient(120% 80% at 50% 12%, rgba(0,0,0,.9), transparent 70%);
  pointer-events:none;
  z-index:-2;
  animation: tl-grid-pan 22s linear infinite;
}
@keyframes tl-grid-pan {
  from { background-position: 0 0, 0 0; }
  to   { background-position: 64px 0, 0 64px; }
}
@media (prefers-reduced-motion: reduce) {
  .tl-hero--neo::before { animation:none; }
}

/* Glow azul→roxo (ajustado para bleed sem criar barra lateral) */
.tl-hero--neo::after {
  content:"";
  position:absolute; left:50%; bottom:-60px; transform:translateX(-50%);
  width: 120%;                 /* cobre mais que a tela, mas sem rolagem */
  max-width: 1200px;           /* evita exageros em telas enormes */
  height: 340px;
  background: radial-gradient(50% 60% at 50% 50%,
              rgba(124,58,237,.16) 0%,
              rgba(41,98,255,.10) 38%,
              rgba(11,18,32,0) 78%);
  filter: blur(8px);
  z-index:-1;
  -webkit-mask-image: radial-gradient(130% 85% at 50% 60%, rgba(0,0,0,.95) 55%, transparent 100%);
          mask-image: radial-gradient(130% 85% at 50% 60%, rgba(0,0,0,.95) 55%, transparent 100%);
}

/* Container de conteúdo */
.tl-hero__container {
  width: min(1040px, 100% - (24px * 2));
  margin-inline: auto;
  padding: 28px 0; /* mobile */
}

/* Heading */
.tl-hero__heading {
  display:flex; align-items:center; gap:10px;
}
.tl-accent {
  flex:0 0 auto;
  display:block;
  filter: drop-shadow(0 4px 16px rgba(41,98,255,.35));
}
.tl-hero__title {
  margin:0;
  font-family:'Montserrat', system-ui, sans-serif;
  font-weight:700;
  font-size:28px;   /* mobile */
  line-height:1.15;
  color:#E5E7EB;
  position:relative;
  text-wrap:balance;
}
.tl-hero__title::after {
  content:"";
  display:block;
  margin-top:10px;
  width:140px; height:2px;
  background: linear-gradient(90deg, #2962FF, #7C3AED);
  border-radius:2px;
  box-shadow:0 0 18px rgba(41,98,255,.35), 0 0 12px rgba(124,58,237,.25);
}

/* Subtítulo */
.tl-hero__subtitle {
  margin:12px 0 0 0;
  max-width:60ch;
  font-family:'Montserrat', system-ui, sans-serif;
  font-weight:500;
  font-size:15px;
  line-height:1.65;
  color:rgba(229,231,235,.86);
}

/* Divisor */
.tl-hero__divider {
  height:1px; width:100%;
  margin-top:22px;
  background-image: linear-gradient(90deg,
    rgba(41,98,255,.0) 0%,
    rgba(41,98,255,.55) 25%,
    rgba(124,58,237,.55) 75%,
    rgba(124,58,237,.0) 100%);
  opacity:.9;
}

/* Refinos responsivos */
@media (max-width:480px){
  .tl-hero--neo::after {
    width:140%; height:300px;
    filter:blur(10px);
  }
}
@media (min-width:1024px){
  .tl-hero__container{ padding:48px 0; }
  .tl-hero__title{ font-size:40px; }
  .tl-hero__title::after{ width:180px; }
  .tl-accent{ filter: drop-shadow(0 6px 20px rgba(41,98,255,.35)); }
}/* End custom CSS */