.elementor-82534 .elementor-element.elementor-element-5e273b4{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7bce9b8{--display:flex;}.elementor-82534 .elementor-element.elementor-element-8262129{--display:flex;}.elementor-widget-breadcrumbs{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.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-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );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-82534 .elementor-element.elementor-element-a20bc2b{--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;--flex-wrap:wrap;}.elementor-widget-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );background-color:var( --e-global-color-accent );}.elementor-82534 .elementor-element.elementor-element-e38e3b0{--display:flex;}.elementor-82534 .elementor-element.elementor-element-1cc571c{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ab74444{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-82534 .elementor-element.elementor-element-79df50e{--display:flex;}.elementor-82534 .elementor-element.elementor-element-dd3dee9{--display:flex;}.elementor-82534 .elementor-element.elementor-element-9361f26{--display:flex;}.elementor-82534 .elementor-element.elementor-element-06cd555{--display:flex;}.elementor-82534 .elementor-element.elementor-element-cad02e3{--display:flex;}.elementor-82534 .elementor-element.elementor-element-19656f9{--display:flex;}.elementor-82534 .elementor-element.elementor-element-9ff6a5d{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ac1a5ac{--display:flex;}.elementor-82534 .elementor-element.elementor-element-3e5496f{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ff6f414{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7db5c24{--display:flex;}.elementor-82534 .elementor-element.elementor-element-de139db{--display:flex;}.elementor-82534 .elementor-element.elementor-element-74fbcdc{--display:flex;}.elementor-82534 .elementor-element.elementor-element-b6341d8{--display:flex;}.elementor-82534 .elementor-element.elementor-element-5a981e5{--display:flex;}.elementor-82534 .elementor-element.elementor-element-2b49464{--display:flex;}.elementor-82534 .elementor-element.elementor-element-10a19aa{--display:flex;}.elementor-82534 .elementor-element.elementor-element-be0fd5c{--display:flex;}.elementor-82534 .elementor-element.elementor-element-8099c2e{--display:flex;}.elementor-82534 .elementor-element.elementor-element-9c2341e{--display:flex;}.elementor-82534 .elementor-element.elementor-element-76ac18b{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ed7c9e2{--display:flex;}.elementor-82534 .elementor-element.elementor-element-13ba8c9{--display:flex;}.elementor-82534 .elementor-element.elementor-element-33f0185{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7cebf1d{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7754a7c{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7e18a7d{--display:flex;}.elementor-82534 .elementor-element.elementor-element-5744ed0{--display:flex;}.elementor-82534 .elementor-element.elementor-element-e33ea48{--display:flex;}.elementor-82534 .elementor-element.elementor-element-b12d26a{--display:flex;}.elementor-82534 .elementor-element.elementor-element-0fa89b9{--display:flex;}.elementor-82534 .elementor-element.elementor-element-0e1ea68{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7ce5cd5{--display:flex;}.elementor-82534 .elementor-element.elementor-element-134661e{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ad75eb9{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7f010d6{--display:flex;--justify-content:flex-start;}.elementor-82534 .elementor-element.elementor-element-072005e{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ebb525b{--display:flex;}.elementor-82534 .elementor-element.elementor-element-c898fd8{--display:flex;}.elementor-82534 .elementor-element.elementor-element-d2a5aba{--display:flex;}.elementor-82534 .elementor-element.elementor-element-23ca285{--display:flex;}.elementor-82534 .elementor-element.elementor-element-a74e488{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7a9e51c{--display:flex;}.elementor-82534 .elementor-element.elementor-element-8658e2e{--display:flex;}.elementor-82534 .elementor-element.elementor-element-311c243{--display:flex;}.elementor-82534 .elementor-element.elementor-element-1361981{--display:flex;}.elementor-82534 .elementor-element.elementor-element-9b00bf5{--display:flex;}.elementor-82534 .elementor-element.elementor-element-b1ee3b4{--display:flex;}.elementor-82534 .elementor-element.elementor-element-bf838aa{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ed1f932{--display:flex;}.elementor-82534 .elementor-element.elementor-element-f713510{--display:flex;}.elementor-82534 .elementor-element.elementor-element-2d0416c{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ce0c0c6{--display:flex;}.elementor-82534 .elementor-element.elementor-element-caeac94{--display:flex;}.elementor-82534 .elementor-element.elementor-element-94c9b29{--display:flex;}.elementor-82534 .elementor-element.elementor-element-705f602{--display:flex;}.elementor-82534 .elementor-element.elementor-element-c9d2540{--display:flex;}.elementor-82534 .elementor-element.elementor-element-6037767{--display:flex;}.elementor-82534 .elementor-element.elementor-element-4881c5e{--display:flex;}.elementor-82534 .elementor-element.elementor-element-31cc2dc{--display:flex;}.elementor-82534 .elementor-element.elementor-element-9a455ac{--display:flex;}.elementor-82534 .elementor-element.elementor-element-18e8cb2{--display:flex;}.elementor-82534 .elementor-element.elementor-element-71a146b{--display:flex;}.elementor-82534 .elementor-element.elementor-element-e8d6145{--display:flex;}.elementor-82534 .elementor-element.elementor-element-2e0128a{--display:flex;}.elementor-82534 .elementor-element.elementor-element-d11f763{--display:flex;}.elementor-82534 .elementor-element.elementor-element-c953248{--display:flex;}.elementor-82534 .elementor-element.elementor-element-e581b98{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ff4ec9d{--display:flex;}.elementor-82534 .elementor-element.elementor-element-592b439{--display:flex;}.elementor-82534 .elementor-element.elementor-element-9e1ede0{--display:flex;}.elementor-82534 .elementor-element.elementor-element-2137872{--display:flex;}.elementor-82534 .elementor-element.elementor-element-eae6507{--display:flex;}.elementor-82534 .elementor-element.elementor-element-139f55c{--display:flex;}.elementor-82534 .elementor-element.elementor-element-7f3a666{--display:flex;}.elementor-82534 .elementor-element.elementor-element-de88b87{--display:flex;}.elementor-82534 .elementor-element.elementor-element-feb5afd{--display:flex;}.elementor-82534 .elementor-element.elementor-element-072ecfb{--display:flex;}.elementor-82534 .elementor-element.elementor-element-98520c3{--display:flex;}.elementor-82534 .elementor-element.elementor-element-715f65a{--display:flex;}.elementor-82534 .elementor-element.elementor-element-d464062{--display:flex;}.elementor-82534 .elementor-element.elementor-element-d075ea2{--display:flex;}.elementor-82534 .elementor-element.elementor-element-d60c225{--display:flex;}.elementor-82534 .elementor-element.elementor-element-74ebf6a{--display:flex;}.elementor-82534 .elementor-element.elementor-element-02742d2{--display:flex;}.elementor-82534 .elementor-element.elementor-element-ed79422{--display:flex;}.elementor-82534 .elementor-element.elementor-element-c3d5a44{--display:flex;}.elementor-82534 .elementor-element.elementor-element-3efedcb{--display:flex;}.elementor-82534 .elementor-element.elementor-element-cf6e1fc{--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;--flex-wrap:wrap;}.elementor-82534 .elementor-element.elementor-element-768935f{--display:flex;}.elementor-82534 .elementor-element.elementor-element-9230731{--display:flex;}.elementor-82534 .elementor-element.elementor-element-1679a7f{--display:flex;}.elementor-82534 .elementor-element.elementor-element-e3bd29f{--display:flex;}:root{--page-title-display:none;}@media(max-width:1200px){.elementor-widget-breadcrumbs{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:1024px){.elementor-widget-breadcrumbs{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:500px){.elementor-widget-breadcrumbs{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-82534 .elementor-element.elementor-element-c327c75.elementor-element{--align-self:flex-start;}}/* Start custom CSS *//* ==========================================================================
   Genyo · Página /aplicativo (widgets nativos do Elementor)
   Local: Configurações da página > Avançado > CSS personalizado.
   Cada seção é um contêiner com a classe "gapp". Os demais contêineres e
   widgets recebem classes "gapp-..." (Avançado > Classes CSS) que dão o visual.
   Textos, botões e prints são editados direto nos widgets.
   ========================================================================== */

/* ---------- Tokens: cores e fontes vêm das globais do site (Elementor > Configurações do site) ---------- */
body .elementor .gapp {
  --g-white: var(--e-global-color-d8384ce);      /* #FFFFFF */
  --g-navy-900: var(--e-global-color-4ad0a70);   /* #002135 */
  --g-navy: var(--e-global-color-5d1771f);       /* #003C5E */
  --g-title: var(--e-global-color-primary);      /* #023859 */
  --g-cyan: var(--e-global-color-secondary);     /* #00B2C3 */
  --g-cta: var(--e-global-color-text);           /* #F45567 */
  --g-cta-hover: var(--e-global-color-accent);   /* #D1344B */
  --g-mist: var(--e-global-color-a6af8b6);       /* #E5F7F9 */
  --g-gray: var(--e-global-color-5bd322a);       /* #F4F4F5 */
  --g-text: var(--e-global-color-ca2315a);       /* #2C2C2C */
  --g-muted: var(--e-global-color-86ddcfd);      /* #69727D */
  --g-on-dark: var(--e-global-color-1e4364c);    /* branco 82% */
  --g-line: color-mix(in srgb, var(--g-navy) 14%, transparent);
  --g-line-dark: color-mix(in srgb, var(--g-white) 16%, transparent);

  --g-wrap: 1120px;
  --g-sec: clamp(56px, 7vw, 96px);
  --g-gap: clamp(56px, 7vw, 96px);
  --g-r-band: clamp(28px, 4.5vw, 64px);
  --g-ease: cubic-bezier(.2, .7, .2, 1);
  --pw: 250px; /* largura única dos celulares */

  --g-fs-h1: clamp(2rem, 1.62rem + 1.15vw, 2.5rem);   /* 32 → 40px */
  --g-fs-h2: clamp(1.75rem, 1.43rem + 1vw, 2.2rem);    /* 28 → 35,2px */
  --g-fs-h3: clamp(1.5rem, 1.35rem + .45vw, 1.7rem);   /* 24 → 27,2px */

  font-family: var(--e-global-typography-text-font-family), sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight);
  line-height: 1.5;
  color: var(--g-text);
  -webkit-font-smoothing: antialiased;
}

/* ---------- Contêineres do Elementor: sem espaçamentos padrão (o espaçamento vem das classes abaixo) ---------- */
body .elementor .gapp.e-con,
body .elementor .gapp .e-con {
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;
  --gap: 0px;
  --row-gap: 0px;
  --column-gap: 0px;
  --widgets-spacing: 0px;
  --widgets-spacing-row: 0px;
  --widgets-spacing-column: 0px;
  --kit-widget-spacing: 0px;
  min-width: 0;
}
body .elementor .gapp.e-con { overflow-x: clip; }
body .elementor .gapp .elementor-widget:not(:last-child) { margin-block-end: 0; }

/* ---------- Base ---------- */
body .elementor .gapp *, body .elementor .gapp *::before, body .elementor .gapp *::after { box-sizing: border-box; }
body .elementor .gapp :where(h1, h2, h3, p, ul, ol, figure) { margin: 0; }
body .elementor .gapp :where(ul, ol) { padding: 0; list-style: none; }
body .elementor .gapp :where(svg) { display: block; max-width: 100%; }
body .elementor .gapp :focus-visible { outline: 3px solid var(--g-cyan); outline-offset: 3px; }

body .elementor .gapp .gapp-wrap { width: min(90%, var(--g-wrap)); max-width: none; margin-inline: auto; }
body .elementor .gapp.gapp-sec { padding-block: var(--g-sec); }
body .elementor .gapp .gapp-stack > .elementor-element + .elementor-element { margin-top: var(--g-gap); }

/* ---------- Títulos (widget Título com a classe gapp-h1, gapp-h2 ou gapp-h3) ---------- */
body .elementor .gapp .gapp-h1 .elementor-heading-title,
body .elementor .gapp .gapp-h2 .elementor-heading-title,
body .elementor .gapp .gapp-h3 .elementor-heading-title {
  font-family: var(--e-global-typography-primary-font-family), sans-serif;
  font-weight: var(--e-global-typography-primary-font-weight);
  line-height: 1.2;
  letter-spacing: normal;
  text-transform: none;
  color: var(--g-title);
  text-wrap: balance;
}
body .elementor .gapp .gapp-h1 .elementor-heading-title { font-size: var(--g-fs-h1); }
body .elementor .gapp .gapp-h2 .elementor-heading-title { font-size: var(--g-fs-h2); }
body .elementor .gapp .gapp-h3 .elementor-heading-title { font-size: var(--g-fs-h3); }

/* ---------- Textos (widget Editor de texto) ---------- */
body .elementor .gapp .elementor-widget-text-editor {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
}
body .elementor .gapp .elementor-widget-text-editor p { max-width: 36rem; }
body .elementor .gapp .elementor-widget-text-editor .elementor-widget-container > * + * { margin-top: 1rem; }
body .elementor .gapp .elementor-widget-text-editor strong { font-weight: var(--e-global-typography-primary-font-weight); }
body .elementor .gapp .elementor-widget-text-editor a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .25em;
}
body .elementor .gapp .gapp-lead p { max-width: 34rem; }

/* Espaçamento vertical dentro dos blocos de texto */
body .elementor .gapp .gapp-copy > .elementor-element + .elementor-element { margin-top: 1rem; }
body .elementor .gapp .gapp-copy > .gapp-h3 + .elementor-element { margin-top: .75rem; }
body .elementor .gapp .gapp-copy > .elementor-element.gapp-lead { margin-top: 1.25rem; }
body .elementor .gapp .gapp-copy > .elementor-element:is(.gapp-actions, .gapp-trust) { margin-top: 2rem; }
body .elementor .gapp .gapp-copy > .elementor-element:is(.gapp-dots, .gapp-steps, .gapp-figure, .gapp-modes__opts) { margin-top: 1.5rem; }

body .elementor .gapp.gapp-dark { color: var(--g-white); }
body .elementor .gapp.gapp-dark .gapp-h1 .elementor-heading-title,
body .elementor .gapp.gapp-dark .gapp-h2 .elementor-heading-title,
body .elementor .gapp.gapp-dark .gapp-h3 .elementor-heading-title { color: var(--g-white); }
body .elementor .gapp.gapp-dark .elementor-widget-text-editor { color: var(--g-on-dark); }
body .elementor .gapp.gapp-dark .elementor-widget-text-editor strong,
body .elementor .gapp.gapp-dark .elementor-widget-text-editor a { color: var(--g-white); }

body .elementor .gapp .gapp-chapter { max-width: 48rem; margin-bottom: clamp(32px, 4vw, 56px); }
body .elementor .gapp .gapp-chapter p { max-width: none; text-wrap: pretty; }
body .elementor .gapp .gapp-chapter--center { margin-inline: auto; text-align: center; }

/* ---------- Botões (widget Botão com a classe gapp-btn ou gapp-link) ---------- */
body .elementor .gapp .gapp-actions { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: .75rem 2rem; }
body .elementor .gapp .gapp-actions > .elementor-element { width: auto; max-width: 100%; flex: 0 0 auto; }

body .elementor .gapp .gapp-btn .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 0 2em;
  border: 0;
  border-radius: 999px;
  background: var(--g-cta);
  color: var(--g-white);
  fill: var(--g-white);
  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);
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  box-shadow: 0 12px 28px -14px color-mix(in srgb, var(--g-cta) 80%, transparent);
  transition: background-color .2s, transform .2s var(--g-ease);
}
body .elementor .gapp .gapp-btn .elementor-button:hover,
body .elementor .gapp .gapp-btn .elementor-button:focus { background: var(--g-cta-hover); color: var(--g-white); transform: translateY(-2px); }
body .elementor .gapp .gapp-btn .elementor-button:focus-visible { outline: 3px solid var(--g-white); outline-offset: 4px; }

body .elementor .gapp .gapp-link .elementor-button,
body .elementor .gapp .gapp-link .elementor-button:hover,
body .elementor .gapp .gapp-link .elementor-button:focus {
  display: inline-flex;
  align-items: center;
  min-height: 48px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: var(--g-title);
  font-family: inherit;
  font-size: inherit;
  font-weight: var(--e-global-typography-primary-font-weight);
  line-height: 1.3;
  letter-spacing: normal;
  text-transform: none;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .3em;
}
body .elementor .gapp.gapp-dark .gapp-link .elementor-button,
body .elementor .gapp.gapp-dark .gapp-link .elementor-button:hover,
body .elementor .gapp.gapp-dark .gapp-link .elementor-button:focus { color: var(--g-white); }

/* ---------- Faixas ---------- */
body .elementor .gapp.gapp-band { position: relative; isolation: isolate; border-radius: var(--g-r-band); }
body .elementor .gapp.gapp-band--after-band { margin-top: 12px; } /* faixa logo abaixo de outra faixa */
body .elementor .gapp.gapp-band--navy {
  background:
    radial-gradient(70% 60% at 85% 0%, color-mix(in srgb, var(--g-cyan) 16%, transparent), transparent 70%),
    linear-gradient(180deg, var(--g-navy) 0%, var(--g-navy-900) 100%);
}
body .elementor .gapp.gapp-band--mist { background: var(--g-mist); }
/* textura de pontos: o "ponto" como motivo visual */
body .elementor .gapp.gapp-band--navy::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  pointer-events: none;
  background: radial-gradient(color-mix(in srgb, var(--g-white) 9%, transparent) 1px, transparent 1.5px) 0 0 / 26px 26px;
  -webkit-mask: linear-gradient(180deg, #000, transparent 55%);
  mask: linear-gradient(180deg, #000, transparent 55%);
}

/* ---------- Topo (hero) ---------- */
body .elementor .gapp.gapp-hero {
  position: relative;
  isolation: isolate;
  overflow: clip;
  padding: clamp(24px, 3vw, 40px) 0 clamp(40px, 5vw, 64px);
  color: var(--g-white);
  border-radius: 0 0 var(--g-r-band) var(--g-r-band);
  background:
    radial-gradient(55% 70% at 78% 45%, color-mix(in srgb, var(--g-cyan) 22%, transparent), transparent 70%),
    linear-gradient(180deg, var(--g-navy) 0%, var(--g-navy-900) 100%);
}
body .elementor .gapp .gapp-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr); /* coluna do texto mais larga: o H1 cabe em duas linhas no desktop */
  align-items: center;
  gap: clamp(24px, 4vw, 64px);
}
body .elementor .gapp .gapp-hero__copy { position: relative; z-index: 2; }
/* Desktop: texto do topo alinhado pelo alto, com o breadcrumb na mesma altura da página Consultor dedicado; celular, brilho e relógio um pouco à esquerda */
@media (min-width: 1025px) {
  body .elementor .gapp .gapp-hero__copy { align-self: start; margin-top: clamp(13px, 9.17vw - 88px, 30px); }
  body .elementor .gapp .gapp-hero__media { translate: -15% 0; }
}
/* Breadcrumb do Rank Math (widget Breadcrumbs do Elementor Pro, o mesmo da página Planos e preços), acima do H1; no fundo escuro usa os brancos das cores globais */
body .elementor .gapp.gapp-dark .elementor-widget-breadcrumbs { color: var(--g-on-dark); }
body .elementor .gapp.gapp-dark .elementor-widget-breadcrumbs a { color: var(--g-white); }
body .elementor .gapp .gapp-trust {
  padding-top: 1.25rem;
  max-width: 34rem;
  border-top: 1px solid var(--g-line-dark);
}
body .elementor .gapp .gapp-trust .elementor-widget-container {
  display: flex;
  align-items: center;
  gap: .875rem;
  font-size: .9375rem;
  line-height: 1.45;
}
body .elementor .gapp .gapp-trust .elementor-widget-container::before {
  content: "";
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='21' fill='none' stroke='%2300b2c3' stroke-width='2.6' stroke-linecap='round' stroke-dasharray='0 5.5'/%3E%3Cpath d='M15.5 24.5l6 6 11-12' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
body .elementor .gapp .gapp-hero__media { position: relative; display: grid; place-items: center; min-height: 560px; } /* mesma altura do topo da página /sistema */

/* ---------- Efeitos (widgets HTML com a classe gapp-fx: partículas, radar e assinatura) ---------- */
body .elementor .gapp .gapp-fx { position: absolute; inset: 0; z-index: 0; width: auto; margin: 0; pointer-events: none; }
body .elementor .gapp .gapp-fx--behind { z-index: -1; }
body .elementor .gapp .gapp-fx--front { z-index: 2; }
body .elementor .gapp .gapp-fx > .elementor-widget-container { position: relative; height: 100%; }

/* Mostrador de partículas: SVG estático de imediato; o canvas WebGL assume depois da primeira interação (só fora do celular) */
body .elementor .gapp .gapp-dial {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(234%, 820px); /* mesmo tamanho de antes do ajuste das colunas do topo */
  aspect-ratio: 1;
  translate: -50% -50%;
  pointer-events: none;
}
body .elementor .gapp .gapp-dial--shield { width: calc(var(--pw) * 2.8); }
body .elementor .gapp .gapp-dial__svg { width: 100%; height: 100%; max-width: none; transition: opacity 1.2s ease; }
body .elementor .gapp .gapp-dial canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1.2s ease;
}
body .elementor .gapp .gapp-dial.is-live canvas { opacity: 1; }
body .elementor .gapp .gapp-dial.is-live .gapp-dial__svg { opacity: 0; }

/* Cerca virtual: radar (só anima enquanto visível) */
body .elementor .gapp .gapp-radar {
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(var(--pw) * 2);
  aspect-ratio: 1;
  translate: -50% -50%;
}
body .elementor .gapp .gapp-radar::before {
  content: "";
  position: absolute;
  inset: 17%;
  border-radius: 50%;
  border: 2px dashed color-mix(in srgb, var(--g-cyan) 55%, transparent);
}
body .elementor .gapp .gapp-radar i {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1.5px solid color-mix(in srgb, var(--g-cyan) 60%, transparent);
  opacity: 0;
  animation: gapp-ping 4.8s cubic-bezier(.2, .6, .3, 1) infinite paused;
}
body .elementor .gapp .gapp-radar i:nth-child(2) { animation-delay: 1.6s; }
body .elementor .gapp .gapp-radar i:nth-child(3) { animation-delay: 3.2s; }
body .elementor .gapp .is-visible > .gapp-radar i { animation-play-state: running; }
@keyframes gapp-ping {
  0% { transform: scale(.32); opacity: .9; }
  100% { transform: scale(1); opacity: 0; }
}

/* Assinatura sobre o celular */
body .elementor .gapp .gapp-sign {
  position: absolute;
  bottom: 30%;
  left: 50%;
  width: calc(var(--pw) * 1.5);
  max-width: none;
  translate: -38% 0;
}
body .elementor .gapp .gapp-sign path { fill: none; stroke: var(--g-navy); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }

/* ---------- Celular: contêiner gapp-device > contêiner gapp-phone (moldura) > widget Imagem gapp-screen (print) ---------- */
body .elementor .gapp .gapp-device {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  justify-self: stretch;
  width: 100%;
}
/* brilho ciano atrás do celular: círculo centrado no celular, sem ser cortado pela largura da coluna */
body .elementor .gapp .gapp-device::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  width: calc(var(--pw) * 2);
  aspect-ratio: 1;
  translate: -50% -50%;
  pointer-events: none;
  background: radial-gradient(closest-side, color-mix(in srgb, var(--g-cyan) 42%, transparent), transparent);
}
body .elementor .gapp .gapp-phone {
  position: relative;
  display: block;
  width: var(--pw);
  max-width: none;
  padding: calc(var(--pw) * .034);
  border-radius: calc(var(--pw) * .165);
  background: linear-gradient(150deg, #34444f 0%, #0d1922 42%, #1e2c37 100%);
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--g-white) 8%, transparent),
    inset 0 1px 0 color-mix(in srgb, var(--g-white) 20%, transparent),
    0 34px 64px -20px color-mix(in srgb, var(--g-navy-900) 60%, transparent),
    0 14px 28px -14px color-mix(in srgb, var(--g-navy-900) 40%, transparent);
}
/* botões laterais */
body .elementor .gapp .gapp-phone::after {
  content: "";
  position: absolute;
  left: -2px;
  top: 18%;
  width: 3px;
  height: 7%;
  border-radius: 3px 0 0 3px;
  background: #22313c;
  box-shadow: 0 calc(var(--pw) * .14) 0 #22313c, calc(var(--pw) + 1px) calc(var(--pw) * .06) 0 #22313c;
}
body .elementor .gapp .gapp-screen { width: 100%; margin: 0; text-align: left; }
body .elementor .gapp .gapp-screen .elementor-widget-container {
  position: relative;
  aspect-ratio: 1179 / 2556;
  overflow: hidden;
  border-radius: calc(var(--pw) * .132);
  background: var(--g-gray);
}
/* câmera (Dynamic Island) */
body .elementor .gapp .gapp-screen .elementor-widget-container::after {
  content: "";
  position: absolute;
  z-index: 3;
  top: 2.3%;
  left: 50%;
  width: 30%;
  height: 3.3%;
  translate: -50% 0;
  border-radius: 99px;
  background: #05090d;
}
body .elementor .gapp .gapp-screen img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
/* Sem print escolhido: mostra um esboço de tela no lugar da imagem padrão do Elementor */
body .elementor .gapp .gapp-screen img[src*="placeholder"] { opacity: 0; }
body .elementor .gapp .gapp-screen:has(img[src*="placeholder"]) .elementor-widget-container {
  background:
    radial-gradient(circle at 50% 37.5%, var(--g-cyan) 0 22%, transparent 24%) 11% 46% / 10% 13% repeat-y,
    repeating-linear-gradient(180deg, var(--g-white) 0 9.5%, transparent 9.5% 12.6%) 50% 100% / 86% 61% no-repeat,
    linear-gradient(180deg, var(--g-navy) 0 31%, var(--g-gray) 31%);
}

/* Dois prints no mesmo celular (modos compartilhado/individual): o segundo fica sobre o primeiro */
body .elementor .gapp .gapp-phone > .gapp-screen + .gapp-screen { position: absolute; inset: calc(var(--pw) * .034); width: auto; }

/* ---------- Revelação ao rolar para baixo (uma vez; sem animação contínua) ---------- */
body .elementor .gapp--reveal [data-gapp-device]:not(.is-in) .gapp-phone {
  opacity: 0;
  translate: var(--gapp-dx, 0) 22%;
  rotate: var(--gapp-rot, -6deg);
  scale: .9;
}
body .elementor .gapp--reveal [data-gapp-device].is-in .gapp-phone {
  transition: opacity .8s ease, translate 1.2s var(--g-ease), rotate 1.2s var(--g-ease), scale 1.2s var(--g-ease);
}
body .elementor .gapp .gapp-device--left { --gapp-dx: -16%; --gapp-rot: -7deg; }
body .elementor .gapp .gapp-device--right { --gapp-dx: 16%; --gapp-rot: 7deg; }

/* Celular do topo: entrada única no carregamento (só transformação, não atrasa o LCP) */
body .elementor .gapp .gapp-device--hero .gapp-phone { animation: gapp-hero-in 1.2s var(--g-ease) .1s both; }
@keyframes gapp-hero-in {
  from { translate: 0 16%; rotate: -5deg; scale: .92; }
  to { translate: none; rotate: none; scale: none; }
}

/* ---------- Blocos texto + celular ---------- */
body .elementor .gapp .gapp-spot {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  gap: clamp(32px, 5vw, 80px);
}
body .elementor .gapp .gapp-spot--flip > .gapp-spot__media { order: -1; }
body .elementor .gapp .gapp-spot__media { position: relative; display: grid; place-items: center; }

body .elementor .gapp .gapp-duo {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(48px, 6vw, 72px) clamp(32px, 5vw, 80px);
}
body .elementor .gapp .gapp-duo__item { display: grid; justify-items: center; align-content: start; gap: clamp(28px, 3vw, 40px); }
body .elementor .gapp .gapp-duo__item > .gapp-copy { width: 100%; max-width: 30rem; }

/* ---------- Lista com pontos (Editor de texto com a classe gapp-dots) ---------- */
body .elementor .gapp .gapp-dots ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem 2rem; margin: 0; padding: 0; list-style: none; }
body .elementor .gapp .gapp-dots li { position: relative; margin: 0; padding-left: 1.5rem; line-height: 1.45; }
body .elementor .gapp .gapp-dots li::before {
  content: "";
  position: absolute;
  left: .1rem;
  top: .5em;
  width: .5rem;
  height: .5rem;
  border-radius: 50%;
  background: var(--g-cyan);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--g-cyan) 16%, transparent);
}

/* ---------- Modos compartilhado / individual ---------- */
body .elementor .gapp .gapp-modes__opts .elementor-widget-container { display: grid; gap: 12px; max-width: 36rem; }
body .elementor .gapp .gapp-mode,
body .elementor .gapp .gapp-mode:hover,
body .elementor .gapp .gapp-mode:focus {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  padding: 1rem 1.25rem 1.1rem 3.25rem;
  border: 1px solid var(--g-line);
  border-radius: 20px;
  background: var(--g-white);
  color: var(--g-text);
  font: inherit;
  text-align: left;
  text-transform: none;
  white-space: normal;
  cursor: pointer;
  transition: border-color .2s, box-shadow .25s;
}
body .elementor .gapp .gapp-mode:hover { border-color: color-mix(in srgb, var(--g-cyan) 70%, transparent); }
body .elementor .gapp .gapp-mode[aria-pressed="true"] { border-color: var(--g-cyan); box-shadow: 0 14px 30px -20px color-mix(in srgb, var(--g-navy) 45%, transparent); }
body .elementor .gapp .gapp-mode::before {
  content: "";
  position: absolute;
  left: 1.25rem;
  top: 1.25rem;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid var(--g-muted);
}
body .elementor .gapp .gapp-mode[aria-pressed="true"]::before { border-color: var(--g-cyan); background: radial-gradient(var(--g-cyan) 0 42%, var(--g-white) 46%); }
body .elementor .gapp .gapp-mode strong { display: block; font-size: var(--e-global-typography-primary-font-size); font-weight: var(--e-global-typography-primary-font-weight); color: var(--g-title); }
body .elementor .gapp .gapp-mode span { display: block; margin-top: .25rem; color: var(--g-muted); }

body .elementor .gapp [data-gapp-modes] [data-gapp-screen] { transition: opacity .45s ease; }
body .elementor .gapp [data-gapp-modes] [data-gapp-screen] img { transition: transform .6s var(--g-ease); }
body .elementor .gapp [data-gapp-modes] [data-gapp-screen="individual"] { opacity: 0; }
body .elementor .gapp [data-gapp-modes] [data-gapp-screen="individual"] img { transform: translateX(16%); }
body .elementor .gapp [data-gapp-modes][data-gapp-mode="individual"] [data-gapp-screen="individual"] { opacity: 1; }
body .elementor .gapp [data-gapp-modes][data-gapp-mode="individual"] [data-gapp-screen="individual"] img { transform: none; }
body .elementor .gapp [data-gapp-modes][data-gapp-mode="individual"] [data-gapp-screen="shared"] { opacity: 0; }
body .elementor .gapp [data-gapp-modes][data-gapp-mode="individual"] [data-gapp-screen="shared"] img { transform: translateX(-16%); }

/* ---------- 99,9% (Editor de texto com a classe gapp-figure) ---------- */
body .elementor .gapp .gapp-figure p {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  max-width: none;
  padding-top: 1.25rem;
  border-top: 1px solid var(--g-line);
}
body .elementor .gapp .gapp-figure strong { font-size: clamp(3rem, 2.4rem + 2.4vw, 4.5rem); font-weight: var(--e-global-typography-primary-font-weight); line-height: 1; color: var(--g-title); }
body .elementor .gapp .gapp-figure .gapp-figure__label { max-width: 14rem; font-size: .9375rem; line-height: 1.45; color: var(--g-muted); }

/* ---------- Passos da correção (Editor de texto com a classe gapp-steps) ---------- */
body .elementor .gapp .gapp-steps ol { position: relative; display: grid; gap: 1.25rem; margin: 0; padding: 0; list-style: none; counter-reset: gapp-step; }
body .elementor .gapp .gapp-steps ol::before {
  content: "";
  position: absolute;
  left: calc(1.1rem - 1px);
  top: 1.2rem;
  bottom: 1.2rem;
  width: 2px;
  background: repeating-linear-gradient(180deg, var(--g-cyan) 0 2px, transparent 2px 8px);
}
body .elementor .gapp .gapp-steps li { position: relative; margin: 0; padding-left: 3.5rem; counter-increment: gapp-step; }
body .elementor .gapp .gapp-steps li::before {
  content: counter(gapp-step);
  position: absolute;
  left: 0;
  top: -.1rem;
  display: grid;
  place-items: center;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 50%;
  background: var(--g-navy);
  color: var(--g-white);
  font-size: .9375rem;
  font-weight: var(--e-global-typography-primary-font-weight);
}
body .elementor .gapp .gapp-steps strong { display: block; color: var(--g-title); font-weight: var(--e-global-typography-primary-font-weight); }

/* ---------- Portaria 671 ---------- */
body .elementor .gapp .gapp-legal {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(32px, 6vw, 96px);
}
body .elementor .gapp .gapp-legal > .elementor-widget-html { width: auto; }
body .elementor .gapp .gapp-seal { width: clamp(180px, 22vw, 260px); margin-inline: auto; }
body .elementor .gapp .gapp-seal text { font-family: inherit; fill: var(--g-white); }
body .elementor .gapp .gapp-legal p { max-width: 40rem; }
body .elementor .gapp .gapp-legal .gapp-dots ul { grid-template-columns: minmax(0, 1fr); }

/* ---------- Perguntas frequentes: título centralizado + shortcode [genyo_faq local="aplicativo"] (mesmo FAQ da Home) ---------- */
body .elementor .gapp .gapp-faq { display: grid; gap: clamp(28px, 3.5vw, 48px); }
body .elementor .gapp .gapp-faq > .gapp-h2 { text-align: center; }

/* ---------- Chamada final ---------- */
body .elementor .gapp.gapp-cta { margin-bottom: clamp(20px, 3vw, 40px); overflow: clip; }
body .elementor .gapp .gapp-cta__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  align-items: center;
  gap: clamp(24px, 5vw, 80px);
}
body .elementor .gapp .gapp-cta__media { display: grid; place-items: center; }

/* Celular da chamada final: inclina em 3D acompanhando o mouse */
body .elementor .gapp.gapp-cta .gapp-device--tilt .gapp-phone {
  transform: perspective(1000px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));
  transition: transform .5s var(--g-ease), opacity .8s ease, translate 1.2s var(--g-ease), rotate 1.2s var(--g-ease), scale 1.2s var(--g-ease);
}
body .elementor .gapp .gapp-device--tilt .gapp-screen .elementor-widget-container::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 38%, color-mix(in srgb, var(--g-white) 22%, transparent) 50%, transparent 62%)
    calc(50% - var(--gx, 0) * 45%) 0 / 260% 100% no-repeat;
  opacity: var(--glare, 0);
  transition: opacity .4s ease, background-position .5s var(--g-ease);
}

/* Contêiner do widget de scripts: não ocupa espaço */
body .elementor .gapp.gapp-scripts { height: 0; overflow: hidden; }

/* ---------- Responsivo ---------- */
@media (max-width: 1024px) {
  body .elementor .gapp { --pw: 230px; }
  body .elementor .gapp .gapp-hero__media { display: none; } /* mesmo corte do Elementor (Tablet); a regra de display do contêiner venceria a classe de ocultar dele */
  body .elementor .gapp .gapp-hero__grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 900px) {
  body .elementor .gapp .gapp-spot,
  body .elementor .gapp .gapp-legal,
  body .elementor .gapp .gapp-cta__grid { grid-template-columns: minmax(0, 1fr); }
  body .elementor .gapp .gapp-spot--flip > .gapp-spot__media { order: 0; }
}

@media (max-width: 640px) {
  body .elementor .gapp { --pw: 220px; }
  body .elementor .gapp .gapp-duo { grid-template-columns: minmax(0, 1fr); }
  body .elementor .gapp .gapp-dots ul { grid-template-columns: minmax(0, 1fr); }
  body .elementor .gapp .gapp-actions > .gapp-btn,
  body .elementor .gapp .gapp-actions > .gapp-btn .elementor-button { width: 100%; }
  body .elementor .gapp .gapp-figure p { flex-direction: column; align-items: flex-start; gap: .5rem; }
}

/* Celular (até 767px, breakpoint do Elementor), telas de toque e "reduzir movimento": página estática, sem nenhum efeito */
@media (max-width: 767px), (hover: none) and (pointer: coarse), (prefers-reduced-motion: reduce) {
  body .elementor .gapp *, body .elementor .gapp *::before, body .elementor .gapp *::after { animation: none !important; transition: none !important; }
}

/* Topo no celular e no tablet: só o texto. O contêiner "Celular e relógio" fica oculto pelo Elementor até 1024px
   (Avançado > Responsivo) e, acima disso, em telas de toque (tablets na horizontal), por esta regra. */
@media (hover: none) and (pointer: coarse) {
  body .elementor .gapp .gapp-hero__media { display: none; }
  body .elementor .gapp .gapp-hero__grid { grid-template-columns: minmax(0, 1fr); }
}/* End custom CSS */