/* Identidade Lucas Cardoso Teixeira — ajustes sobre o tema */
:root {
  --color-primary-50: #eef1ff;
  --color-primary-500: #3d5cff;
  --color-primary-600: #2c48e6;
  --color-ns-green: #b9c6ff;
  --color-ns-cyan: #9fb0ff;
}
html, body { overflow-x: clip; }
::selection { background: #3d5cff; color: #fff; }
:focus-visible { outline: 2px solid #3d5cff; outline-offset: 3px; }

/* Assinatura no cabeçalho */
.brand-signature { display: block; height: 36px; width: auto; }
@media (min-width: 1024px) { .brand-signature { height: 40px; } }
@media (max-width: 374px) { .brand-signature { height: 32px; } }

/* Texto de destaque com tom de marca */
.text-grad { background: linear-gradient(92deg, #0b0d12 10%, #3d5cff 90%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.lct-dark .text-grad { background: linear-gradient(92deg, #ffffff 10%, #9fb0ff 90%); -webkit-background-clip: text; background-clip: text; }

/* Seção escura premium */
.lct-dark { background: radial-gradient(900px 520px at 88% 0%, rgba(61, 92, 255, 0.38), transparent 62%), radial-gradient(700px 480px at 0% 100%, rgba(122, 140, 255, 0.18), transparent 60%), #0b0d12; color: #e8ebf5; }
.lct-dark h1, .lct-dark h2, .lct-dark h3, .lct-dark h4 { color: #fff; }
.lct-dark p:not(.lv p) { color: rgba(232, 235, 245, 0.72); }
.lct-dark .lct-line { border-color: rgba(255, 255, 255, 0.1); }
.lct-dark .text-secondary { color: #fff; }
.lct-card-dark { background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.09); border-radius: 20px; transition: border-color .4s, background .4s, transform .4s; }
.lct-card-dark:hover { border-color: rgba(159, 176, 255, 0.45); background: rgba(61, 92, 255, 0.08); transform: translateY(-3px); }
.lct-dark [class*="ns-shape-"] { color: #9fb0ff; }

/* Cartões de solução com microinteração */
.lct-card { transition: transform .45s cubic-bezier(.2,.8,.2,1), box-shadow .45s, border-color .45s; }
.lct-card:hover { transform: translateY(-4px); box-shadow: 0 24px 50px -24px rgba(11, 13, 18, .25); border-color: rgba(61, 92, 255, .35); }

/* Marquee textual de tecnologias */
.tech-item { display: inline-flex; align-items: center; gap: 10px; white-space: nowrap; font-family: "Inter Tight", sans-serif; font-size: 15px; color: rgba(26, 26, 28, .55); }
.tech-item::before { content: ""; width: 6px; height: 6px; border-radius: 99px; background: #3d5cff; opacity: .6; }

/* Botão flutuante de WhatsApp */
.wa-float { position: fixed; right: 20px; bottom: 20px; z-index: 55; display: inline-flex; align-items: center; gap: 10px; height: 56px; padding: 0 18px 0 16px; border-radius: 999px; background: #0b0d12; color: #fff; font-family: "Inter Tight", sans-serif; font-size: 15px; box-shadow: 0 16px 40px -12px rgba(11, 13, 18, .55), 0 0 0 1px rgba(255,255,255,.08) inset; transition: transform .35s cubic-bezier(.2,.8,.2,1), background .35s; }
.wa-float:hover { transform: translateY(-3px); background: #3d5cff; }
.wa-float svg { width: 24px; height: 24px; }
@media (max-width: 767px) { .wa-float { width: 56px; padding: 0; justify-content: center; } .wa-float span { display: none; } }

/* Rodapé */
.footer-chip { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid var(--color-stroke-3); border-radius: 999px; font-size: 14px; color: var(--color-secondary); transition: all .3s; }
.footer-chip svg { width: 18px; height: 18px; }
.footer-chip:hover { border-color: #3d5cff; color: #3d5cff; }

/* Cartões de contato */
.contact-ico { width: 44px; height: 44px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, .08); color: #fff; }

/* Pílulas de tecnologia */
.pill { display: inline-flex; align-items: center; padding: 6px 12px; border-radius: 999px; border: 1px solid var(--color-stroke-3); font-size: 13px; color: rgba(26,26,28,.75); background: #fff; }
.lct-dark .pill { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.12); color: rgba(232,235,245,.8); }

/* Formulário */
.form-msg { margin-top: 16px; padding: 14px 16px; border-radius: 14px; font-size: 15px; line-height: 1.5; }
.form-msg.ok { background: rgba(22, 163, 122, .1); color: #0f7a5b; }
.form-msg.err { background: rgba(229, 72, 77, .1); color: #b4262b; }
select.lct-select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%231a1a1c' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; }

/* Etiqueta de projeto demonstrativo */
.demo-tag { display: inline-flex; align-items: center; gap: 6px; padding: 5px 11px; border-radius: 999px; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; background: rgba(255,255,255,.14); color: #fff; backdrop-filter: blur(6px); }

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
.hl { color: #3d5cff; }
.lct-dark .hl { color: #9fb0ff; }
.lct-dark [data-button-wrapper].text-secondary { color: #fff; border-color: rgba(255,255,255,.16); }
.lct-dark [data-button-wrapper] .bg-accent\/60 { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.14); }
.services-details-content > * + * { margin-top: 20px; }
.services-details-content > h2 { margin-top: 64px; }
.services-details-content > h2:first-child { margin-top: 0; }
.services-details-content > figure { margin-top: 32px; }
.services-details-content > ul { margin-top: 24px; }
/* Botões no celular: largura mínima de 80% e crescimento conforme o texto */
@media (max-width: 767px) {
  a:has(> [data-button-wrapper]), div.w-\[80\%\]:has(> a > [data-button-wrapper]) { width: auto !important; min-width: 80%; max-width: 100%; }
  [data-button-wrapper] { min-width: 100%; }
  [data-button-wrapper] [data-button-upper-text] { padding-right: 2px; }
}
@media (max-width: 420px) {
  [data-button-wrapper] { font-size: 15px; }
  [data-button-wrapper] > div { padding-left: 18px; column-gap: 10px; }
}
.lct-spot-shade { background: linear-gradient(180deg, rgba(11,13,18,0) 25%, rgba(11,13,18,.72) 55%, rgba(11,13,18,.96) 82%, #0b0d12 100%); }
@media (max-width: 767px) { .lct-spot-shade { background: linear-gradient(0deg, #0b0d12 0, #0b0d12 175px, rgba(11,13,18,.9) 215px, rgba(11,13,18,0) 300px); } }
@media (max-width: 767px) { [data-spotlight-cards] [data-spotlight-card] { height: 440px !important; } }

/* Cabeçalho em vidro translúcido (sem borda, menus também em vidro) */
.header-scroll {
  background: transparent !important;
  border: 0 !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: 0 8px 30px -16px rgba(11, 13, 18, 0.18);
  isolation: isolate;
  filter: none !important;
}
.header-scroll::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  pointer-events: none;
  background: rgba(255, 255, 255, 0.28);
  -webkit-backdrop-filter: blur(18px) saturate(170%);
  backdrop-filter: blur(18px) saturate(170%);
}
.header-scroll .nav-hamburger { background: rgba(255, 255, 255, 0.3); }
.header-scroll .mega-menu {
  background: rgba(255, 255, 255, 0.34) !important;
  border: 0 !important;
  -webkit-backdrop-filter: blur(22px) saturate(170%);
  backdrop-filter: blur(22px) saturate(170%);
  box-shadow: 0 18px 40px -18px rgba(11, 13, 18, 0.22);
}
.sidebar {
  background: rgba(255, 255, 255, 0.4) !important;
  -webkit-backdrop-filter: blur(24px) saturate(170%);
  backdrop-filter: blur(24px) saturate(170%);
  box-shadow: none !important;
}
.sidebar .mobile-nav-panel { background: transparent !important; }
.mobile-nav-backdrop { background: rgba(11, 13, 18, 0.12) !important; }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .header-scroll::before, .header-scroll .mega-menu, .sidebar { background: rgba(255, 255, 255, 0.94) !important; }
}
.sidebar .bg-white { background: transparent !important; }
.sidebar .border-stroke-1 { border-color: rgba(11, 13, 18, 0.06) !important; }
/* Botão do cabeçalho sem contorno externo */
.header-scroll [data-button-wrapper] { border: 0 !important; padding: 0 !important; height: 46px; background: transparent !important; box-shadow: none !important; }

@layer utilities {

.-top-24 {
  top: calc(var(--spacing, .25rem) * -24);
}
.-top-40 {
  top: calc(var(--spacing, .25rem) * -40);
}
.top-4 {
  top: calc(var(--spacing, .25rem) * 4);
}
.-right-24 {
  right: calc(var(--spacing, .25rem) * -24);
}
.-right-32 {
  right: calc(var(--spacing, .25rem) * -32);
}
.-bottom-10 {
  bottom: calc(var(--spacing, .25rem) * -10);
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.mb-12 {
  margin-bottom: calc(var(--spacing, .25rem) * 12);
}
.size-\[320px\] {
  width: 320px;
  height: 320px;
}
.size-\[340px\] {
  width: 340px;
  height: 340px;
}
.h-\[220px\] {
  height: 220px;
}
.h-\[280px\] {
  height: 280px;
}
.min-h-\[420px\] {
  min-height: 420px;
}
.w-\[46\%\] {
  width: 46%;
}
.w-auto {
  width: auto;
}
.max-w-\[520px\] {
  max-width: 520px;
}
.max-w-\[540px\] {
  max-width: 540px;
}
.max-w-\[640px\] {
  max-width: 640px;
}
.max-w-\[720px\] {
  max-width: 720px;
}
.max-w-\[760px\] {
  max-width: 760px;
}
.max-w-\[820px\] {
  max-width: 820px;
}
.max-w-\[860px\] {
  max-width: 860px;
}
.max-w-\[900px\] {
  max-width: 900px;
}
.max-w-\[960px\] {
  max-width: 960px;
}
.max-w-\[1000px\] {
  max-width: 1000px;
}
.justify-end {
  justify-content: flex-end;
}
.gap-7 {
  gap: calc(var(--spacing, .25rem) * 7);
}
.gap-x-6 {
  column-gap: calc(var(--spacing, .25rem) * 6);
}
.rounded-\[16px\] {
  border-radius: 16px;
}
.border-white\/10 {
  border-color: color-mix(in srgb, #fff 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-white, #fff) 10%, transparent);
  }
}
.bg-\[linear-gradient\(180deg\,rgba\(0\,0\,0\,0\)_45\%\,rgba\(0\,0\,0\,0\.55\)_72\%\,\#000_99\.96\%\)\] {
  background-image: linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,0.55) 72%,#000 99.96%);
}
.from-black\/80 {
  --tw-gradient-from: color-mix(in srgb, #000 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-gradient-from: color-mix(in oklab, var(--color-black, #000) 80%, transparent);
  }
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
}
.via-black\/25 {
  --tw-gradient-via: color-mix(in srgb, #000 25%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-gradient-via: color-mix(in oklab, var(--color-black, #000) 25%, transparent);
  }
  --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-via-stops);
}
.to-60\% {
  --tw-gradient-to-position: 60%;
}
.object-left-top {
  object-position: left top;
}
.object-top {
  object-position: top;
}
.p-9 {
  padding: calc(var(--spacing, .25rem) * 9);
}
.pt-7 {
  padding-top: calc(var(--spacing, .25rem) * 7);
}
.pt-10 {
  padding-top: calc(var(--spacing, .25rem) * 10);
}
.pt-28 {
  padding-top: calc(var(--spacing, .25rem) * 28);
}
.pt-40 {
  padding-top: calc(var(--spacing, .25rem) * 40);
}
.pb-7 {
  padding-bottom: calc(var(--spacing, .25rem) * 7);
}
.pb-32 {
  padding-bottom: calc(var(--spacing, .25rem) * 32);
}
.pl-2 {
  padding-left: calc(var(--spacing, .25rem) * 2);
}
.text-heading-1 {
  font-size: var(--text-heading-1, 4.25rem);
  line-height: var(--tw-leading, var(--text-heading-1--line-height, 110%));
}
.text-heading-3 {
  font-size: var(--text-heading-3, 2.5rem);
  line-height: var(--tw-leading, var(--text-heading-3--line-height, 120%));
}
.text-\[16px\] {
  font-size: 16px;
}
.tracking-\[0\.12em\] {
  --tw-tracking: 0.12em;
  letter-spacing: 0.12em;
}
.tracking-\[0\.14em\] {
  --tw-tracking: 0.14em;
  letter-spacing: 0.14em;
}
.break-all {
  word-break: break-all;
}
.text-accent\/70 {
  color: color-mix(in srgb, #fcfcfc 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-accent, #fcfcfc) 70%, transparent);
  }
}
.text-accent\/80 {
  color: color-mix(in srgb, #fcfcfc 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-accent, #fcfcfc) 80%, transparent);
  }
}
.text-secondary\/70 {
  color: color-mix(in srgb, #1a1a1c 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-secondary, #1a1a1c) 70%, transparent);
  }
}
.text-white\/75 {
  color: color-mix(in srgb, #fff 75%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white, #fff) 75%, transparent);
  }
}
.text-white\/80 {
  color: color-mix(in srgb, #fff 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-white, #fff) 80%, transparent);
  }
}
.opacity-80 {
  opacity: 80%;
}
.opacity-90 {
  opacity: 90%;
}
.shadow-\[0_30px_60px_-20px_rgba\(11\,13\,18\,\.45\)\] {
  --tw-shadow: 0 30px 60px -20px var(--tw-shadow-color, rgba(11,13,18,.45));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-\[0_40px_120px_-40px_rgba\(61\,92\,255\,\.55\)\] {
  --tw-shadow: 0 40px 120px -40px var(--tw-shadow-color, rgba(61,92,255,.55));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-\[0_40px_120px_-50px_rgba\(11\,13\,18\,\.45\)\] {
  --tw-shadow: 0 40px 120px -50px var(--tw-shadow-color, rgba(11,13,18,.45));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.hover\:text-primary-500 {
  &:hover {
    @media (hover: hover) {
      color: var(--color-primary-500, #864ffe);
    }
  }
}
.hover\:text-white {
  &:hover {
    @media (hover: hover) {
      color: var(--color-white, #fff);
    }
  }
}
.max-lg\:pt-10 {
  @media (width < 64rem) {
    padding-top: calc(var(--spacing, .25rem) * 10);
  }
}
.max-md\:mx-auto {
  @media (width < 48rem) {
    margin-inline: auto;
  }
}
.md\:-right-6 {
  @media (width >= 48rem) {
    right: calc(var(--spacing, .25rem) * -6);
  }
}
.md\:row-span-2 {
  @media (width >= 48rem) {
    grid-row: span 2 / span 2;
  }
}
.md\:max-w-\[300px\] {
  @media (width >= 48rem) {
    max-width: 300px;
  }
}
.md\:p-10 {
  @media (width >= 48rem) {
    padding: calc(var(--spacing, .25rem) * 10);
  }
}
.md\:px-8 {
  @media (width >= 48rem) {
    padding-inline: calc(var(--spacing, .25rem) * 8);
  }
}
.md\:py-24 {
  @media (width >= 48rem) {
    padding-block: calc(var(--spacing, .25rem) * 24);
  }
}
.md\:pt-8 {
  @media (width >= 48rem) {
    padding-top: calc(var(--spacing, .25rem) * 8);
  }
}
.md\:pb-8 {
  @media (width >= 48rem) {
    padding-bottom: calc(var(--spacing, .25rem) * 8);
  }
}
.md\:text-heading-2 {
  @media (width >= 48rem) {
    font-size: var(--text-heading-2, 3.25rem);
    line-height: var(--tw-leading, var(--text-heading-2--line-height, 120%));
  }
}
.lg\:top-28 {
  @media (width >= 64rem) {
    top: calc(var(--spacing, .25rem) * 28);
  }
}
.lg\:top-32 {
  @media (width >= 64rem) {
    top: calc(var(--spacing, .25rem) * 32);
  }
}
.lg\:order-1 {
  @media (width >= 64rem) {
    order: 1;
  }
}
.lg\:order-2 {
  @media (width >= 64rem) {
    order: 2;
  }
}
.lg\:col-span-3 {
  @media (width >= 64rem) {
    grid-column: span 3 / span 3;
  }
}
.lg\:col-span-5 {
  @media (width >= 64rem) {
    grid-column: span 5 / span 5;
  }
}
.lg\:col-span-7 {
  @media (width >= 64rem) {
    grid-column: span 7 / span 7;
  }
}
.lg\:h-\[440px\] {
  @media (width >= 64rem) {
    height: 440px;
  }
}
.lg\:w-64 {
  @media (width >= 64rem) {
    width: calc(var(--spacing, .25rem) * 64);
  }
}
.lg\:w-\[32\%\] {
  @media (width >= 64rem) {
    width: 32%;
  }
}
.lg\:w-\[68\%\] {
  @media (width >= 64rem) {
    width: 68%;
  }
}
.lg\:max-w-\[880px\] {
  @media (width >= 64rem) {
    max-width: 880px;
  }
}
.lg\:max-w-\[1000px\] {
  @media (width >= 64rem) {
    max-width: 1000px;
  }
}
.lg\:gap-x-16 {
  @media (width >= 64rem) {
    column-gap: calc(var(--spacing, .25rem) * 16);
  }
}
.lg\:pb-36 {
  @media (width >= 64rem) {
    padding-bottom: calc(var(--spacing, .25rem) * 36);
  }
}
.xl\:h-\[460px\] {
  @media (width >= 80rem) {
    height: 460px;
  }
}
.xl\:space-y-20 {
  @media (width >= 80rem) {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing, .25rem) * 20) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing, .25rem) * 20) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
}
.xl\:gap-y-12 {
  @media (width >= 80rem) {
    row-gap: calc(var(--spacing, .25rem) * 12);
  }
}
.xl\:py-36 {
  @media (width >= 80rem) {
    padding-block: calc(var(--spacing, .25rem) * 36);
  }
}
.xl\:pt-39 {
  @media (width >= 80rem) {
    padding-top: calc(var(--spacing, .25rem) * 39);
  }
}
.xl\:pb-\[120px\] {
  @media (width >= 80rem) {
    padding-bottom: 120px;
  }
}
.\32 xl\:max-h-\[500px\] {
  @media (width >= 96rem) {
    max-height: 500px;
  }
}
.\32 xl\:min-h-\[500px\] {
  @media (width >= 96rem) {
    min-height: 500px;
  }
}
.\32 xl\:justify-evenly {
  @media (width >= 96rem) {
    justify-content: space-evenly;
  }
}
.\32 xl\:gap-x-8 {
  @media (width >= 96rem) {
    column-gap: calc(var(--spacing, .25rem) * 8);
  }
}
.\32 xl\:gap-x-25 {
  @media (width >= 96rem) {
    column-gap: calc(var(--spacing, .25rem) * 25);
  }
}
.\32 xl\:gap-y-8 {
  @media (width >= 96rem) {
    row-gap: calc(var(--spacing, .25rem) * 8);
  }
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-space-y-reverse: 0;
    }
  }
}

}

/* =====================================================================
   Lucas Cardoso Teixeira — Design System v2 (prefixo lc-)
   Tokens centralizados sobre o tema NextSaaS. Componentes encapsulados.
   ===================================================================== */
:root {
  --lc-ink: #0b0d12;
  --lc-text: #1a1a1c;
  --lc-muted: rgba(26, 26, 28, .72);
  --lc-faint: rgba(26, 26, 28, .64);
  --lc-primary: #3d5cff;
  --lc-primary-600: #2c48e6;
  --lc-primary-50: #eef1ff;
  --lc-surface: #ffffff;
  --lc-bg: #f2f5fa;
  --lc-soft: #f7f9fc;
  --lc-line: #e3e7ed;
  --lc-line-2: #d7dde5;
  --lc-warn: #b45309;
  --lc-warn-50: #fff6e9;
  --lc-ok: #0f7a5b;
  --lc-ok-50: #e8f7f1;
  --lc-r-xs: 10px;
  --lc-r-sm: 14px;
  --lc-r: 20px;
  --lc-r-lg: 28px;
  --lc-shadow: 0 1px 2px rgba(11, 13, 18, .04), 0 10px 30px -18px rgba(11, 13, 18, .18);
  --lc-shadow-lg: 0 2px 4px rgba(11, 13, 18, .04), 0 28px 60px -28px rgba(11, 13, 18, .30);
  --lc-ease: cubic-bezier(.2, .8, .2, 1);
  --lc-gap: 20px;
  --lc-sec: clamp(72px, 9vw, 128px);
}

/* ---------- base ---------- */
.lc-skip { position: absolute; left: 12px; top: -60px; z-index: 100; padding: 10px 16px; border-radius: 999px; background: var(--lc-ink); color: #fff; font-size: 14px; transition: top .2s; }
.lc-skip:focus { top: 12px; }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid var(--lc-primary); outline-offset: 3px; border-radius: 8px; }
[hidden] { display: none !important; }
.lc-section { padding-block: var(--lc-sec); }
.lc-section.pt-0 { padding-top: 0; }
.lc-svg { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; overflow: visible; }
.lc-i { width: 22px; height: 22px; flex-shrink: 0; }
.lc-i--sm { width: 16px; height: 16px; }
.lc-i--lg { width: 30px; height: 30px; }

/* ---------- tipografia ---------- */
.lc-display { font-size: clamp(2.35rem, 5.2vw, 4.4rem); line-height: 1.04; letter-spacing: -.035em; font-weight: 500; color: var(--lc-ink); max-width: 17ch; }
@media (max-width: 1023px) { .lc-display { margin-inline: auto; } }
.lc-h1 { font-size: clamp(2rem, 4.2vw, 3.5rem); line-height: 1.08; letter-spacing: -.03em; font-weight: 500; color: var(--lc-ink); max-width: 22ch; margin-top: 18px; }
@media (max-width: 1023px) { .lc-h1 { margin-inline: auto; } }
.lc-h2 { font-size: clamp(1.75rem, 3.2vw, 2.75rem); line-height: 1.12; letter-spacing: -.025em; font-weight: 500; color: var(--lc-ink); }
.lc-h3 { font-size: clamp(1.35rem, 2.1vw, 1.75rem); line-height: 1.22; letter-spacing: -.02em; font-weight: 500; color: var(--lc-ink); }
.lct-dark .lc-h2, .lct-dark .lc-h3, .lct-dark .lc-display { color: #fff; }
.lc-lead { font-size: clamp(1.02rem, 1.3vw, 1.15rem); line-height: 1.6; color: var(--lc-muted); max-width: 640px; margin-top: 18px; }
.lc-lead--lg { font-size: clamp(1.06rem, 1.5vw, 1.25rem); max-width: 620px; }
.lct-dark .lc-lead { color: rgba(232, 235, 245, .74); }
.lc-muted { color: var(--lc-muted); }
.lc-small { font-size: 14px; line-height: 1.55; }
.lc-kicker { font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--lc-faint); font-weight: 500; }
.lc-kicker--hero { color: var(--lc-muted); margin-bottom: 18px; letter-spacing: .12em; }
.lct-dark .lc-kicker { color: rgba(205, 213, 255, .7); }
.lc-a { color: var(--lc-primary); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; background: none; border: 0; font: inherit; padding: 0; }
.lc-head .lc-h2 { margin-top: 16px; }
.lc-head--center .lc-h2 { max-width: 24ch; margin-inline: auto; }
@media (max-width: 1023px) { .lc-head .lc-h2 { margin-inline: auto; max-width: 26ch; } }
.lc-head .lc-lead { margin-top: 14px; }
.lc-opt { font-weight: 400; color: var(--lc-faint); }

/* ---------- ícones em mosaico ---------- */
.lc-ico { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: var(--lc-r-sm); background: var(--lc-surface); border: 1px solid var(--lc-line); color: var(--lc-ink); flex-shrink: 0; transition: background .35s var(--lc-ease), color .35s, border-color .35s; }
.lc-ico .lc-i { width: 22px; height: 22px; }
.lc-ico--sm { width: 36px; height: 36px; border-radius: 11px; }
.lc-ico--sm .lc-i { width: 18px; height: 18px; }
.lc-ico--lg { width: 58px; height: 58px; border-radius: 18px; }
.lc-ico--lg .lc-i { width: 28px; height: 28px; }
.lc-ico--primary { background: var(--lc-primary-50); border-color: transparent; color: var(--lc-primary); }
.lc-ico--warn { background: var(--lc-warn-50); border-color: transparent; color: var(--lc-warn); }

/* ---------- cards ---------- */
.lc-card { position: relative; display: block; background: var(--lc-surface); border: 1px solid var(--lc-line); border-radius: var(--lc-r); padding: 24px; transition: transform .45s var(--lc-ease), box-shadow .45s var(--lc-ease), border-color .45s; }
.lc-card--soft { background: var(--lc-soft); }
.lc-card--link { cursor: pointer; }
.lc-card--link:hover { transform: translateY(-3px); box-shadow: var(--lc-shadow-lg); border-color: rgba(61, 92, 255, .35); }
.lc-card--link:hover .lc-ico { background: var(--lc-primary); color: #fff; border-color: var(--lc-primary); }
.lc-card--accent { background: var(--lc-ink); border-color: var(--lc-ink); color: #fff; }
.lc-card--accent .lc-card__title { color: #fff; }
.lc-card--accent .lc-card__text { color: rgba(255, 255, 255, .7); }
.lc-card--accent .lc-card__more { color: #b9c6ff; }
.lc-card--accent .lc-ico { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .14); color: #fff; }
.lc-card--dark { background: rgba(255, 255, 255, .045); border: 1px solid rgba(255, 255, 255, .1); color: #e8ebf5; }
.lc-card--dark .lc-card__text, .lc-card--dark p { color: rgba(232, 235, 245, .7); }
.lc-card--dark .lc-mini__t, .lc-card--dark .lc-card__title { color: #fff; }
.lc-card--dark.lc-card--link:hover { background: rgba(61, 92, 255, .12); border-color: rgba(159, 176, 255, .45); box-shadow: none; }
.lc-card--glass { background: rgba(255, 255, 255, .55); -webkit-backdrop-filter: blur(16px) saturate(160%); backdrop-filter: blur(16px) saturate(160%); border-color: rgba(255, 255, 255, .8); box-shadow: var(--lc-shadow); }
.lc-card__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.lc-card__title { font-size: 1.125rem; line-height: 1.35; font-weight: 500; color: var(--lc-ink); letter-spacing: -.01em; }
.lc-card__text { font-size: 15px; line-height: 1.55; color: var(--lc-muted); margin-top: 6px; }
.lc-card__go { position: absolute; top: 24px; right: 24px; color: var(--lc-faint); transition: transform .4s var(--lc-ease), color .3s; }
.lc-card--link:hover .lc-card__go { color: var(--lc-primary); transform: translate(2px, -2px); }
.lc-svc .lc-card__top { margin-bottom: 16px; padding-right: 28px; }
.lc-card__more { display: inline-flex; align-items: center; gap: 6px; margin-top: 18px; font-size: 14px; font-weight: 500; color: var(--lc-primary-600); }
.lc-count { font-size: 12.5px; color: var(--lc-faint); border: 1px solid var(--lc-line); border-radius: 999px; padding: 4px 10px; white-space: nowrap; }
.lc-mini { display: flex; gap: 16px; align-items: flex-start; padding: 20px; }
.lc-mini__t { font-size: 1.04rem; line-height: 1.4; font-weight: 500; color: var(--lc-ink); }
.lc-num { font-family: "Inter Tight", sans-serif; font-size: 13px; font-weight: 600; color: var(--lc-primary-600); background: var(--lc-primary-50); border-radius: 10px; min-width: 38px; height: 30px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }
.lc-sec { display: flex; gap: 16px; align-items: flex-start; }
.lc-pillar .lc-card__title { margin-top: 18px; }

/* grids */
.lc-grid-cards { display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.lc-grid-2 { display: grid; gap: 16px; grid-template-columns: 1fr; }
.lc-grid-3 { display: grid; gap: 18px; grid-template-columns: 1fr; }
@media (min-width: 768px) { .lc-grid-2 { grid-template-columns: repeat(2, 1fr); } .lc-grid-3 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .lc-grid-3 { grid-template-columns: repeat(3, 1fr); } }

/* ---------- etiquetas, chips, filtros ---------- */
.lc-tag { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; font-size: 12.5px; line-height: 1.3; color: var(--lc-muted); background: var(--lc-soft); border: 1px solid var(--lc-line); }
.lc-tag--soft { background: var(--lc-bg); }
.lc-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.lc-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.lc-chip { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; font-size: 14px; color: var(--lc-text); background: var(--lc-surface); border: 1px solid var(--lc-line); transition: all .3s var(--lc-ease); }
a.lc-chip:hover { border-color: var(--lc-primary); color: var(--lc-primary); }
.lc-chip--static { color: var(--lc-muted); }
.lct-dark .lc-chip { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .14); color: #e8ebf5; }
.lc-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.lc-filter { display: inline-flex; align-items: center; gap: 8px; padding: 9px 15px; border-radius: 999px; font-size: 14px; color: var(--lc-text); background: var(--lc-surface); border: 1px solid var(--lc-line); cursor: pointer; transition: all .3s var(--lc-ease); }
.lc-filter:hover { border-color: var(--lc-line-2); }
.lc-filter[aria-pressed="true"] { background: var(--lc-ink); color: #fff; border-color: var(--lc-ink); }
.lc-status { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 500; letter-spacing: .02em; }
.lc-status::before { content: ""; width: 6px; height: 6px; border-radius: 99px; background: currentColor; }
.lc-status--done { background: var(--lc-ok-50); color: var(--lc-ok); }
.lc-status--dev { background: #eef1ff; color: var(--lc-primary-600); }
.lc-status--demo { background: #f3eefe; color: #6d3fd1; }
.lc-status--concept { background: #f1f2f4; color: #4b5563; }
.lc-legend { display: flex; flex-wrap: wrap; gap: 8px; }

/* ---------- links e botões auxiliares ---------- */
.lc-link { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 500; color: var(--lc-ink); }
.lc-link .lc-i, .lc-link__arr { transition: transform .35s var(--lc-ease); color: var(--lc-primary); display: inline-flex; }
.lc-link:hover { color: var(--lc-primary); }
.lc-link:hover .lc-i { transform: translateX(3px); }
.lct-dark .lc-link { color: #fff; }
.lc-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; align-items: center; }
@media (max-width: 1023px) { .lc-actions { justify-content: center; } }
.lc-btn-solid { display: flex; align-items: center; justify-content: center; gap: 8px; height: 50px; margin-top: 18px; border-radius: 999px; background: var(--lc-primary); color: #fff; font-size: 15px; font-weight: 500; transition: background .3s; }
.lc-btn-solid:hover { background: var(--lc-primary-600); }
.lc-reset { font-size: 14px; color: var(--lc-primary); background: none; border: 0; cursor: pointer; padding: 8px 4px; align-self: end; }

/* ---------- hero das páginas internas ---------- */
.lc-hero { position: relative; overflow: hidden; padding-top: clamp(124px, 14vw, 176px); padding-bottom: clamp(56px, 7vw, 96px); }
.lc-hero__grid, .lc-home-hero > .lc-hero__grid { position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(11, 13, 18, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(11, 13, 18, .045) 1px, transparent 1px); background-size: 56px 56px; -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 0%, #000 30%, transparent 75%); mask-image: radial-gradient(ellipse 70% 60% at 50% 0%, #000 30%, transparent 75%); }
.lc-hero::after { content: ""; position: absolute; width: 620px; height: 620px; right: -160px; top: -260px; border-radius: 50%; background: radial-gradient(closest-side, rgba(61, 92, 255, .14), transparent); pointer-events: none; }
.lc-home-hero { position: relative; padding-top: clamp(130px, 15vw, 190px); }
.lc-crumbs { margin-bottom: 28px; }
.lc-crumbs ol { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font-size: 13.5px; color: var(--lc-faint); }
@media (max-width: 1023px) { .lc-crumbs ol { justify-content: center; } }
.lc-crumbs li + li::before { content: "/"; margin-right: 6px; color: var(--lc-line-2); }
.lc-crumbs a:hover { color: var(--lc-primary); }
.lc-crumbs [aria-current] { color: var(--lc-muted); }
.lc-sumcard { padding: 26px; box-shadow: var(--lc-shadow); }
.lc-sum { margin-top: 14px; display: grid; gap: 14px; }
.lc-sum li { display: flex; gap: 12px; align-items: flex-start; font-size: 14.5px; line-height: 1.5; color: var(--lc-muted); }
.lc-sum li .lc-i { margin-top: 3px; color: var(--lc-primary); }
.lc-sum strong { display: block; font-weight: 500; color: var(--lc-ink); font-size: 13px; letter-spacing: .02em; }
.lc-sum a { color: var(--lc-text); text-decoration: underline; text-decoration-color: var(--lc-line-2); text-underline-offset: 3px; }
.lc-spec { display: grid; gap: 4px; }
.lc-spec a { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 12px; font-size: 15px; color: var(--lc-text); transition: background .3s; }
.lc-spec a:hover { background: rgba(61, 92, 255, .08); color: var(--lc-primary); }
.lc-spec .lc-i { color: var(--lc-primary); }

/* ---------- página de serviço ---------- */
.lc-svc-layout { display: grid; grid-template-columns: 1fr; gap: 40px; padding-bottom: var(--lc-sec); }
@media (min-width: 1024px) { .lc-svc-layout { grid-template-columns: 230px minmax(0, 1fr); gap: 56px; } }
.lc-toc { display: none; }
@media (min-width: 1024px) { .lc-toc { display: block; position: sticky; top: 120px; align-self: start; max-height: calc(100vh - 140px); overflow: auto; } }
.lc-toc ol { margin-top: 12px; border-left: 1px solid var(--lc-line); }
.lc-toc a { display: block; padding: 7px 0 7px 16px; margin-left: -1px; border-left: 2px solid transparent; font-size: 14px; color: var(--lc-muted); transition: color .25s, border-color .25s; }
.lc-toc a:hover { color: var(--lc-ink); }
.lc-toc a.is-current { color: var(--lc-primary); border-left-color: var(--lc-primary); }
.lc-svc-main { min-width: 0; }
.lc-block { padding-top: 56px; scroll-margin-top: 110px; }
.lc-block:first-child { padding-top: 0; }
.lc-prose > p { font-size: 17px; line-height: 1.75; color: var(--lc-muted); margin-top: 16px; }
.lc-prose > .lc-h3 + p { margin-top: 14px; }
.lc-article h2 { font-size: clamp(1.35rem, 2.1vw, 1.7rem); line-height: 1.25; font-weight: 500; color: var(--lc-ink); margin-top: 48px; letter-spacing: -.015em; scroll-margin-top: 110px; }
.lc-article h2:first-child { margin-top: 0; }
.lc-article > ul { margin-top: 16px; display: grid; gap: 10px; }
.lc-article > ul > li { position: relative; padding-left: 22px; font-size: 16.5px; line-height: 1.65; color: var(--lc-muted); }
.lc-article > ul > li::before { content: ""; position: absolute; left: 4px; top: 11px; width: 7px; height: 7px; border-radius: 99px; background: var(--lc-primary); }
.lc-artmeta { display: flex; flex-wrap: wrap; gap: 8px 18px; font-size: 14px; color: var(--lc-faint); }
@media (max-width: 1023px) { .lc-artmeta { justify-content: center; } }
.lc-notice { display: flex; gap: 14px; align-items: flex-start; margin-top: 24px; padding: 18px 20px; border-radius: var(--lc-r-sm); background: var(--lc-warn-50); border: 1px solid #f6dfbd; }
.lc-notice .lc-i { color: var(--lc-warn); margin-top: 2px; }
.lc-notice p { font-size: 14.5px !important; line-height: 1.6 !important; color: #6b4a1a !important; margin: 0 !important; }
.lc-checks { display: grid; gap: 12px; }
.lc-checks li { display: flex; gap: 12px; align-items: flex-start; font-size: 15.5px; line-height: 1.55; color: var(--lc-muted); }
.lc-checks .lc-i { margin-top: 3px; color: var(--lc-primary); }
.lc-checks--warn .lc-i { color: var(--lc-warn); }
.lc-checks strong { color: var(--lc-ink); font-weight: 500; }
.lct-dark .lc-checks li { color: rgba(232, 235, 245, .75); }
.lc-steps { display: grid; gap: 0; counter-reset: s; }
.lc-step { display: flex; gap: 18px; position: relative; padding-bottom: 26px; }
.lc-step:last-child { padding-bottom: 0; }
.lc-step::before { content: ""; position: absolute; left: 17px; top: 38px; bottom: 4px; width: 1px; background: var(--lc-line-2); }
.lc-step:last-child::before { display: none; }
.lc-step__n { width: 35px; height: 35px; border-radius: 99px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 600; background: var(--lc-ink); color: #fff; }
.lc-step .lc-card__text { margin-top: 4px; }
.lc-darkbox { border-radius: var(--lc-r-lg); padding: clamp(28px, 4vw, 48px); overflow: hidden; position: relative; }
.lc-darkbox--lg { padding: clamp(32px, 6vw, 72px); }

/* ---------- catálogo ---------- */
.lc-toolbar { display: flex; flex-direction: column; gap: 16px; margin-bottom: 18px; padding: 18px; border-radius: var(--lc-r); background: var(--lc-surface); border: 1px solid var(--lc-line); box-shadow: var(--lc-shadow); }
.lc-toolbar--proj { flex-direction: row; flex-wrap: wrap; align-items: end; }
.lc-toolbar--proj .lc-field { flex: 1 1 200px; }
.lc-group { padding-top: 48px; scroll-margin-top: 110px; }
.lc-group__head { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.lc-group__head > div { flex: 1; }
.lc-group__head .lc-muted { font-size: 15px; margin-top: 2px; }
.lc-empty { text-align: center; padding: 48px 16px; color: var(--lc-muted); }
.lc-search { position: relative; display: flex; align-items: center; }
.lc-search__i { position: absolute; left: 16px; color: var(--lc-faint); pointer-events: none; width: 18px; height: 18px; }
.lc-search input { width: 100%; height: 48px; padding: 0 16px 0 46px; border-radius: 999px; border: 1px solid var(--lc-line-2); background: var(--lc-soft); font-size: 15px; color: var(--lc-ink); transition: border-color .25s, background .25s; }
.lc-search input:focus { outline: none; border-color: var(--lc-primary); background: #fff; box-shadow: 0 0 0 4px rgba(61, 92, 255, .12); }
.lc-search--lg input { height: 54px; font-size: 16px; }
.lc-results { display: grid; gap: 4px; margin-top: 10px; }
.lc-results a { display: flex; gap: 12px; align-items: flex-start; padding: 12px; border-radius: 14px; background: rgba(255, 255, 255, .7); border: 1px solid var(--lc-line); }
.lc-results a:hover, .lc-results a:focus-visible { border-color: var(--lc-primary); }
.lc-results .lc-i { color: var(--lc-primary); margin-top: 2px; }
.lc-results strong { display: block; font-weight: 500; font-size: 15px; color: var(--lc-ink); }
.lc-results small { display: block; font-size: 13px; color: var(--lc-muted); line-height: 1.45; margin-top: 2px; }
.lc-results em { font-style: normal; font-size: 11.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--lc-faint); }
.lc-results .lc-noresult { padding: 12px; font-size: 14px; color: var(--lc-muted); }

/* ---------- soluções ---------- */
.lc-solrow { scroll-margin-top: 110px; background: var(--lc-surface); border: 1px solid var(--lc-line); border-radius: var(--lc-r-lg); padding: clamp(22px, 3.5vw, 40px); }
.lc-solrow__head { display: flex; align-items: center; gap: 14px; margin-bottom: 24px; flex-wrap: wrap; }
.lc-solrow p { color: var(--lc-muted); line-height: 1.65; }
.lc-sol { display: flex; gap: 16px; align-items: flex-start; }
.lc-panel { border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); padding: clamp(24px, 4vw, 48px); }
.lc-sollist { display: grid; gap: 10px; grid-template-columns: 1fr; }
@media (min-width: 768px) { .lc-sollist { grid-template-columns: 1fr 1fr; } }
.lc-solitem { display: flex; align-items: center; gap: 14px; padding: 14px; border-radius: 16px; border: 1px solid var(--lc-line); background: var(--lc-soft); transition: all .35s var(--lc-ease); }
.lc-solitem__t { flex: 1; font-size: 15px; line-height: 1.4; color: var(--lc-ink); }
.lc-solitem__a { color: var(--lc-faint); transition: transform .35s var(--lc-ease), color .3s; }
.lc-solitem:hover { background: #fff; border-color: rgba(61, 92, 255, .35); box-shadow: var(--lc-shadow); }
.lc-solitem:hover .lc-solitem__a { color: var(--lc-primary); transform: translate(2px, -2px); }
.lc-solitem:hover .lc-ico { background: var(--lc-primary); color: #fff; border-color: var(--lc-primary); }

/* ---------- projetos ---------- */
.lc-proj { padding: 0; overflow: hidden; display: flex; flex-direction: column; }
.lc-proj__fig { position: relative; aspect-ratio: 16 / 11; overflow: hidden; background: var(--lc-soft); border-bottom: 1px solid var(--lc-line); }
.lc-proj__fig img { width: 100%; height: 100%; object-fit: cover; object-position: left top; transition: transform .7s var(--lc-ease); }
.lc-proj:hover .lc-proj__fig img { transform: scale(1.035); }
.lc-proj__fig .lc-status { position: absolute; left: 14px; top: 14px; box-shadow: 0 4px 14px rgba(11, 13, 18, .12); }
.lc-proj__body { padding: 22px; }
.lc-proj__body .lc-kicker { margin-bottom: 6px; }
.lc-shot { position: relative; border-radius: var(--lc-r-lg); overflow: hidden; border: 1px solid var(--lc-line); box-shadow: var(--lc-shadow-lg); background: #fff; }
.lc-shot img { width: 100%; height: auto; display: block; }
.lc-shot figcaption { font-size: 13px; color: var(--lc-faint); padding: 12px 18px; border-top: 1px solid var(--lc-line); background: #fff; }
.lc-shot--stack { overflow: visible; border: 0; box-shadow: none; background: none; }
.lc-shot--stack > img:first-child { border-radius: var(--lc-r-lg); border: 1px solid var(--lc-line); box-shadow: var(--lc-shadow-lg); }
.lc-shot__phone { position: absolute; right: -10px; bottom: -36px; width: 28%; border-radius: 22px; border: 6px solid #0b0d12; box-shadow: var(--lc-shadow-lg); }
@media (max-width: 767px) { .lc-shot__phone { right: 6px; bottom: -24px; width: 32%; border-width: 4px; border-radius: 16px; } }

/* ---------- tecnologias ---------- */
.lc-techgroup { scroll-margin-top: 110px; padding: 28px; }
.lc-techlist { display: grid; gap: 2px; grid-template-columns: 1fr; }
@media (min-width: 640px) { .lc-techlist { grid-template-columns: 1fr 1fr; gap: 4px 18px; } }
.lc-techitem { padding: 10px 0; border-top: 1px solid var(--lc-line); }
.lc-techitem strong { display: block; font-weight: 500; color: var(--lc-ink); font-size: 15px; }
.lc-techitem span { font-size: 13.5px; color: var(--lc-muted); line-height: 1.45; }

/* ---------- escritório / metodologia ---------- */
.lc-flow { display: grid; gap: 10px; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.lc-flow__i { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 14px; background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1); color: #fff; font-size: 14.5px; }
.lc-flow__i .lc-ico { background: rgba(255, 255, 255, .08); border-color: transparent; color: #b9c6ff; }
.lc-hsteps { display: grid; gap: 12px; grid-template-columns: 1fr; }
@media (min-width: 640px) { .lc-hsteps { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .lc-hsteps { grid-template-columns: repeat(3, 1fr); } }
.lc-hstep { position: relative; padding: 22px; border-radius: var(--lc-r); background: var(--lc-surface); border: 1px solid var(--lc-line); }
.lc-hstep__n { position: absolute; top: 22px; right: 22px; font-size: 13px; font-weight: 600; color: var(--lc-faint); }
.lc-hstep .lc-mini__t { margin-top: 16px; }
.lc-stepcard .lc-card__title { font-size: 1.25rem; }
.lc-contact { display: flex; gap: 14px; align-items: center; }

/* ---------- seções da home ---------- */
.lc-aiflow { border-radius: var(--lc-r); background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .1); padding: 28px; }
.lc-aiflow__list { display: grid; gap: 0; }
.lc-aiflow__list li { position: relative; display: flex; gap: 16px; align-items: center; padding: 13px 0; color: #e8ebf5; font-size: 15.5px; }
.lc-aiflow__list li + li::after { content: ""; position: absolute; left: 6px; top: -13px; height: 26px; width: 1px; background: linear-gradient(rgba(159, 176, 255, .1), rgba(159, 176, 255, .6), rgba(159, 176, 255, .1)); background-size: 100% 200%; animation: lcFlow 2.4s linear infinite; }
.lc-flowdot { width: 13px; height: 13px; border-radius: 99px; background: #3d5cff; box-shadow: 0 0 0 5px rgba(61, 92, 255, .2); flex-shrink: 0; }
@keyframes lcFlow { from { background-position: 0 0; } to { background-position: 0 -200%; } }
.lc-iarow { display: flex; align-items: center; gap: 12px; padding: 14px 16px; font-size: 15px; }
.lc-iarow span { flex: 1; color: #fff; }
.lc-iarow .lc-i { color: #b9c6ff; }
.lc-hub { width: 100%; height: auto; display: block; }
.lc-hub__line { stroke: #9fb0ff; stroke-width: 1.5; fill: none; stroke-dasharray: 5 7; animation: lcDash 3s linear infinite; }
@keyframes lcDash { to { stroke-dashoffset: -96; } }
.lc-hub__node rect { fill: #fff; stroke: #d7dde5; }
.lc-hub__node text { font: 500 14px "Inter Tight", sans-serif; fill: #1a1a1c; }
.lc-hub__core circle { fill: #0b0d12; }
.lc-hub__core text { font: 500 14px "Inter Tight", sans-serif; fill: #fff; }
.lc-hub__core { animation: lcPulse 3.2s var(--lc-ease) infinite; transform-origin: 300px 230px; }
@keyframes lcPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.04); } }

/* ---------- CTA ---------- */
.lc-cta { position: relative; overflow: hidden; border-radius: var(--lc-r-lg); padding: clamp(40px, 7vw, 88px) clamp(22px, 5vw, 64px); }
.lc-cta__glow { position: absolute; inset: auto -20% -60% -20%; height: 120%; background: radial-gradient(closest-side, rgba(61, 92, 255, .35), transparent); pointer-events: none; }

/* ---------- formulário ---------- */
.lc-form-card { background: var(--lc-surface); border: 1px solid var(--lc-line); border-radius: var(--lc-r-lg); padding: clamp(22px, 4vw, 44px); box-shadow: var(--lc-shadow); }
.lc-form { display: grid; gap: 18px; position: relative; }
.lc-form__row { display: grid; gap: 18px; grid-template-columns: 1fr; }
@media (min-width: 768px) { .lc-form__row { grid-template-columns: 1fr 1fr; } }
.lc-field { display: grid; gap: 7px; }
.lc-field label { font-size: 14px; font-weight: 500; color: var(--lc-ink); }
.lc-input { width: 100%; height: 50px; padding: 0 18px; border-radius: 14px; border: 1px solid var(--lc-line-2); background: var(--lc-soft); font-size: 15px; color: var(--lc-ink); transition: border-color .25s, background .25s, box-shadow .25s; }
.lc-input::placeholder { color: rgba(26, 26, 28, .42); }
.lc-input:focus { outline: none; border-color: var(--lc-primary); background: #fff; box-shadow: 0 0 0 4px rgba(61, 92, 255, .12); }
.lc-input[aria-invalid="true"] { border-color: #d92d20; background: #fff8f7; }
select.lc-input { padding-right: 42px; cursor: pointer; }
.lc-textarea { height: auto; min-height: 132px; padding: 14px 18px; resize: vertical; line-height: 1.55; }
.lc-field__err { font-size: 13px; color: #b42318; }
.lc-consent { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; color: var(--lc-muted); line-height: 1.5; }
.lc-consent input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--lc-primary); flex-shrink: 0; cursor: pointer; }
.lc-consent a { color: var(--lc-primary); text-decoration: underline; }
.lc-form__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 20px; margin-top: 4px; }
.lc-form__actions [data-button-wrapper] { min-width: 230px; }
.lc-form.is-sending [type="submit"] { opacity: .6; pointer-events: none; }
.lc-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
[data-form-msg]:empty { display: none; }
[data-form-msg] { padding: 16px 18px; border-radius: 14px; font-size: 15px; line-height: 1.55; }
[data-form-msg].ok { background: var(--lc-ok-50); color: var(--lc-ok); }
[data-form-msg].err { background: #fdecea; color: #b42318; }
[data-form-msg] a { text-decoration: underline; font-weight: 500; }
.lc-field--inline label { font-size: 13px; color: var(--lc-muted); font-weight: 500; }

/* ---------- cabeçalho e mega menu ---------- */
.lc-nav-a { display: inline-flex; align-items: center; gap: 4px; padding: 8px 14px; border-radius: 999px; border: 1px solid transparent; font-size: 15px; color: rgba(26, 26, 28, .68); transition: all .25s; }
.lc-nav-a:hover, .nav-item.active > .lc-nav-a, .lc-nav-a.is-active { color: var(--lc-ink); border-color: rgba(11, 13, 18, .1); }
.lc-nav-a .nav-arrow { display: inline-flex; transition: transform .3s; }
.lc-mega { left: 0; right: 0; width: auto; }
.header-scroll .lc-mega { background: rgba(255, 255, 255, .8) !important; border: 1px solid rgba(255, 255, 255, .7) !important; border-radius: 24px; padding: 10px; }
.lc-mega__inner { display: grid; grid-template-columns: 330px 1fr; gap: 10px; }
.lc-mega__tabs { display: grid; gap: 2px; padding: 4px; }
.lc-mega__tab { display: flex; width: 100%; text-align: left; gap: 12px; align-items: center; padding: 10px 12px; border-radius: 14px; cursor: pointer; background: transparent; border: 0; transition: background .25s; }
.lc-mega__tab strong { display: block; font-weight: 500; font-size: 14.5px; color: var(--lc-ink); }
.lc-mega__tab small { display: block; font-size: 12.5px; line-height: 1.35; color: var(--lc-muted); margin-top: 1px; }
.lc-mega__tab[aria-selected="true"] { background: #fff; box-shadow: 0 6px 18px -10px rgba(11, 13, 18, .25); }
.lc-mega__tab[aria-selected="true"] .lc-ico { background: var(--lc-primary); color: #fff; border-color: var(--lc-primary); }
.lc-mega__body { background: rgba(255, 255, 255, .7); border-radius: 18px; padding: 22px 24px; }
.lc-mega__ph { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; padding-bottom: 16px; margin-bottom: 14px; border-bottom: 1px solid var(--lc-line); }
.lc-mega__desc { font-size: 14.5px; color: var(--lc-muted); margin-top: 4px; }
.lc-mega__links { display: grid; grid-template-columns: 1fr 1fr; gap: 2px 14px; }
.lc-mega__links a { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 10px; font-size: 14.5px; color: var(--lc-text); transition: background .2s, color .2s; }
.lc-mega__links a .lc-i { color: var(--lc-faint); transition: color .2s; }
.lc-mega__links a:hover { background: var(--lc-primary-50); color: var(--lc-primary); }
.lc-mega__links a:hover .lc-i { color: var(--lc-primary); }
.lc-mega__foot { display: flex; flex-wrap: wrap; gap: 6px 22px; align-items: center; padding: 12px 16px 6px; font-size: 14px; }
.lc-mega__foot a { display: inline-flex; align-items: center; gap: 8px; color: var(--lc-muted); }
.lc-mega__foot a:hover { color: var(--lc-primary); }
.lc-mega__cta { margin-left: auto; color: var(--lc-primary) !important; font-weight: 500; }
.lc-mega__sect { display: grid; grid-template-columns: 280px 1fr; gap: 12px; }
.lc-mega__intro { padding: 18px; }
.lc-mega__intro .lc-link { margin-top: 18px; }
.lc-mega__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; background: rgba(255, 255, 255, .7); border-radius: 18px; padding: 12px; }
.lc-mega__grid a { display: flex; align-items: center; gap: 10px; padding: 8px; border-radius: 12px; font-size: 14px; line-height: 1.3; color: var(--lc-text); transition: background .2s; }
.lc-mega__grid strong { font-weight: 450; }
.lc-mega__grid a:hover { background: var(--lc-primary-50); color: var(--lc-primary); }
.lc-mega__grid a:hover .lc-ico { color: var(--lc-primary); }

/* ---------- botão hambúrguer ---------- */
.lc-burger { width: 48px; height: 48px; border-radius: 999px; display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; background: rgba(255, 255, 255, .45); border: 1px solid rgba(255, 255, 255, .7); cursor: pointer; }
.lc-burger span { width: 20px; height: 1.6px; border-radius: 2px; background: var(--lc-ink); transition: transform .35s var(--lc-ease), opacity .2s; }
.lc-burger span:nth-child(2) { width: 14px; margin-left: 6px; }

/* ---------- painel de navegação mobile ---------- */
.lc-nav { position: fixed; inset: 0; z-index: 90; }
.lc-nav__backdrop { position: absolute; inset: 0; background: rgba(11, 13, 18, .28); opacity: 0; transition: opacity .35s var(--lc-ease); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); }
.lc-nav__sheet { position: absolute; inset: 10px; display: flex; flex-direction: column; border-radius: 26px; overflow: hidden; background: rgba(246, 248, 252, .82); -webkit-backdrop-filter: blur(26px) saturate(170%); backdrop-filter: blur(26px) saturate(170%); border: 1px solid rgba(255, 255, 255, .75); box-shadow: 0 30px 80px -30px rgba(11, 13, 18, .45); opacity: 0; transform: translateY(14px) scale(.985); transition: opacity .38s var(--lc-ease), transform .45s var(--lc-ease); }
@media (min-width: 640px) { .lc-nav__sheet { left: auto; width: 440px; } }
.lc-nav.is-open .lc-nav__backdrop { opacity: 1; }
.lc-nav.is-open .lc-nav__sheet { opacity: 1; transform: none; }
.lc-nav__top { display: flex; align-items: center; justify-content: space-between; padding: 14px 14px 10px 18px; }
.lc-nav__brand img { height: 34px; width: auto; }
.lc-nav__close { width: 44px; height: 44px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, .8); border: 1px solid var(--lc-line); cursor: pointer; color: var(--lc-ink); }
.lc-nav__scroll { flex: 1; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; padding: 4px 14px 18px; }
.lc-nav__label { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--lc-faint); margin: 22px 6px 10px; }
.lc-mcards { display: grid; gap: 8px; }
.lc-mcard { background: rgba(255, 255, 255, .78); border: 1px solid rgba(255, 255, 255, .9); border-radius: 18px; box-shadow: 0 1px 2px rgba(11, 13, 18, .04); overflow: hidden; }
.lc-mcard--plain { margin-top: 8px; }
.lc-mcard__head { display: flex; width: 100%; align-items: center; gap: 12px; padding: 12px; background: none; border: 0; text-align: left; cursor: pointer; color: inherit; }
.lc-mcard__txt { flex: 1; min-width: 0; }
.lc-mcard__txt strong { display: block; font-weight: 500; font-size: 15.5px; color: var(--lc-ink); }
.lc-mcard__txt small { display: block; font-size: 13px; line-height: 1.4; color: var(--lc-muted); margin-top: 2px; }
.lc-mcard__chev { width: 30px; height: 30px; border-radius: 99px; display: inline-flex; align-items: center; justify-content: center; background: var(--lc-soft); color: var(--lc-muted); transition: transform .35s var(--lc-ease), background .3s; flex-shrink: 0; }
.lc-mcard__head[aria-expanded="true"] .lc-mcard__chev { transform: rotate(180deg); background: var(--lc-primary-50); color: var(--lc-primary); }
.lc-mcard__body { padding: 0 12px 12px; animation: lcFadeIn .3s var(--lc-ease); }
.lc-mcard__body ul { display: grid; gap: 2px; border-top: 1px solid var(--lc-line); padding-top: 8px; }
.lc-mcard__body li a { display: flex; align-items: center; gap: 10px; padding: 10px 8px; border-radius: 10px; font-size: 14.5px; color: var(--lc-text); }
.lc-mcard__body li a .lc-i { color: var(--lc-primary); }
.lc-mcard__body li a:active, .lc-mcard__body li a:hover { background: var(--lc-primary-50); }
.lc-mcard__all { margin: 8px 8px 2px; font-size: 14px; }
@keyframes lcFadeIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.lc-nav__all { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 8px; padding: 12px; border-radius: 14px; border: 1px dashed var(--lc-line-2); font-size: 14.5px; color: var(--lc-ink); }
.lc-nav__links { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lc-nav__links a { display: flex; align-items: center; gap: 10px; padding: 13px 12px; border-radius: 14px; background: rgba(255, 255, 255, .7); border: 1px solid rgba(255, 255, 255, .9); font-size: 14.5px; color: var(--lc-ink); }
.lc-nav__links a .lc-i { color: var(--lc-primary); }
.lc-nav__foot { padding: 12px 14px 14px; border-top: 1px solid rgba(11, 13, 18, .06); background: rgba(255, 255, 255, .55); }
.lc-nav__cta { display: flex; align-items: center; justify-content: center; gap: 8px; height: 52px; border-radius: 999px; background: var(--lc-primary); color: #fff; font-size: 15.5px; font-weight: 500; box-shadow: 0 12px 26px -12px rgba(61, 92, 255, .7); }
.lc-nav__quick { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 10px; }
.lc-nav__quick a { display: flex; align-items: center; justify-content: center; gap: 6px; height: 42px; border-radius: 12px; background: rgba(255, 255, 255, .85); border: 1px solid var(--lc-line); font-size: 13.5px; color: var(--lc-ink); }
.lc-nav .lc-search input { background: rgba(255, 255, 255, .85); }
html.lc-locked, html.lc-locked body { overflow: hidden !important; }

/* ---------- rodapé ---------- */
.lc-footer { background: #fcfcfd; border-top: 1px solid var(--lc-line); padding-top: clamp(64px, 8vw, 110px); }
.lc-footer__grid { display: grid; gap: 40px; grid-template-columns: 1fr 1fr; }
@media (min-width: 1024px) { .lc-footer__grid { grid-template-columns: 1.6fr repeat(4, 1fr); gap: 32px; } }
.lc-footer__brand { grid-column: 1 / -1; max-width: 360px; }
@media (min-width: 1024px) { .lc-footer__brand { grid-column: auto; } }
.lc-footer__brand img { width: 220px; height: auto; }
.lc-footer__tag { font-size: 12.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--lc-ink); margin: 16px 0 10px; font-weight: 500; line-height: 1.5; }
.lc-footer__brand .lc-muted { font-size: 15px; line-height: 1.6; }
.lc-fcol__t { font-size: 15px; font-weight: 500; color: var(--lc-ink); margin-bottom: 16px; }
.lc-fcol ul { display: grid; gap: 11px; }
.lc-fcol a { font-size: 14.5px; color: var(--lc-muted); transition: color .2s; }
.lc-fcol a:hover { color: var(--lc-primary); }
.lc-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; padding: 26px 0 32px; margin-top: 56px; border-top: 1px solid var(--lc-line); font-size: 14px; color: var(--lc-ink); }

/* ---------- acessibilidade / movimento ---------- */
@media (prefers-reduced-motion: reduce) {
  .lc-hub__line, .lc-hub__core, .lc-aiflow__list li + li::after { animation: none !important; }
  .lc-nav__sheet, .lc-nav__backdrop { transition: none !important; }
}
@media (max-width: 1279px) { .lc-mega { display: none !important; } }

@media (max-width: 639px) {
  .lc-card { padding: 20px; }
  .lc-pillar { padding: 16px; }
  .lc-pillar .lc-card__title { font-size: 1rem; margin-top: 14px; }
  .lc-pillar .lc-card__text { font-size: 13.5px; }
  .lc-mini { padding: 16px; gap: 14px; }
  .lc-prose > p { font-size: 16px; }
}

/* entrada do conteúdo acima da dobra sem depender de JavaScript (melhor LCP) */
.lc-rise { animation: lcRise .8s var(--lc-ease) both; }
.lc-rise--2 { animation-delay: .08s; }
.lc-rise--3 { animation-delay: .16s; }
@keyframes lcRise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .lc-rise { animation: none; } }

/* ---------- Visuais animados (lv-) ---------- */
.lv { margin: 28px 0 0; position: relative; min-width: 0; max-width: 100%; }
.lv-cap { font-size: 12px; color: var(--lc-faint); margin-top: 8px; text-align: right; letter-spacing: .02em; }
.lct-dark .lv-cap { color: rgba(232, 235, 245, .55); }
.lv-win { position: relative; border-radius: 18px; background: #fff; border: 1px solid var(--lc-line); box-shadow: 0 30px 70px -38px rgba(11, 13, 18, .38), 0 2px 6px rgba(11, 13, 18, .04); overflow: hidden; color: var(--lc-ink); }
.lv-bar { display: flex; align-items: center; gap: 6px; padding: 10px 14px; border-bottom: 1px solid var(--lc-line); background: rgba(247, 249, 252, .9); }
.lv-bar i { width: 9px; height: 9px; border-radius: 99px; background: #dfe4eb; }
.lv-bar i:first-child { background: #ff8f80; } .lv-bar i:nth-child(2) { background: #ffd25e; } .lv-bar i:nth-child(3) { background: #6fdc9a; }
.lv-bar span { margin-left: 8px; font: 500 12px/1 ui-monospace, SFMono-Regular, Menlo, monospace; color: var(--lc-faint); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lv-svg { display: block; width: 100%; height: auto; padding: 8px; }
.lv-svg text { font-family: "Inter Tight", system-ui, sans-serif; }
.lv-lbl { font-size: 12px; fill: var(--lc-faint); letter-spacing: .04em; }
.lv-box { fill: #fff; stroke: #d7dde5; transition: fill .4s; }
.lv-box--hi { fill: #eef1ff; stroke: #9fb0ff; }
.lv-box--side { fill: #f7f9fc; stroke-dasharray: 4 4; }
.lv-t { font-size: 12.5px; fill: #1a1a1c; font-weight: 500; }
.lv-t--s { font-size: 11.5px; fill: var(--lc-faint); }
.lv-ln { stroke: #b9c6ff; stroke-width: 1.4; fill: none; stroke-dasharray: 4 6; }
.lv-on .lv-ln { animation: lvDash 2.6s linear infinite; }
@keyframes lvDash { to { stroke-dashoffset: -60; } }
.lv-pk { fill: #3d5cff; filter: drop-shadow(0 0 4px rgba(61, 92, 255, .8)); }
.lv-node rect { fill: #fff; stroke: #d7dde5; }
.lv-node text { font-size: 13px; fill: #1a1a1c; font-weight: 500; }
.lv-core circle { fill: #0b0d12; }
.lv-core .lv-ring { fill: none; stroke: #3d5cff; stroke-width: 2; opacity: 0; transform-origin: 300px 170px; }
.lv-on .lv-core .lv-ring { animation: lvRing 2.4s ease-out infinite; }
@keyframes lvRing { 0% { transform: scale(1); opacity: .7; } 100% { transform: scale(1.6); opacity: 0; } }
.lv-core text { font-size: 13px; fill: #fff; font-weight: 500; }

/* fluxo */
.lv-flow { display: flex; align-items: stretch; gap: 0; padding: 22px 18px 10px; overflow: hidden; }
.lv-step { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 12px 6px; border-radius: 14px; border: 1px solid transparent; transition: all .4s; }
.lv-step b { display: block; font-size: 13px; font-weight: 600; color: var(--lc-ink); }
.lv-step small { display: block; font-size: 11.5px; line-height: 1.35; color: var(--lc-muted); }
.lv-ico { width: 40px; height: 40px; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; background: #f2f5fa; color: #1a1a1c; }
.lv-ico svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.lv-on .lv-step { animation: lvStep 6s infinite; animation-delay: calc(var(--i) * 1s); }
.lv-on .lv-step .lv-ico { animation: lvIco 6s infinite; animation-delay: calc(var(--i) * 1s); }
@keyframes lvStep { 0%, 100% { border-color: transparent; background: transparent; } 4%, 18% { border-color: rgba(61, 92, 255, .35); background: rgba(61, 92, 255, .05); } 26% { border-color: transparent; background: transparent; } }
@keyframes lvIco { 0%, 100% { background: #f2f5fa; color: #1a1a1c; } 4%, 18% { background: #3d5cff; color: #fff; } 26% { background: #f2f5fa; color: #1a1a1c; } }
.lv-conn { flex: 0 0 22px; position: relative; align-self: center; height: 2px; background: #dfe4eb; margin-top: -30px; }
.lv-conn em { position: absolute; left: 0; top: -2px; width: 6px; height: 6px; border-radius: 99px; background: #3d5cff; opacity: 0; }
.lv-on .lv-conn em { animation: lvConn 6s infinite; animation-delay: calc(var(--i) * 1s + .7s); }
@keyframes lvConn { 0% { left: 0; opacity: 1; } 6% { left: 16px; opacity: 1; } 7%, 100% { opacity: 0; } }
.lv-log { margin: 4px 18px 18px; padding: 12px 14px; border-radius: 12px; background: #0b0d12; font: 12px/1.7 ui-monospace, SFMono-Regular, Menlo, monospace; color: #b9c6ff; overflow: hidden; }
.lv-log p { opacity: .9; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #b9c6ff; }
.lv-on .lv-log p { animation: lvLog 6s infinite; animation-delay: calc(var(--i) * 1s); }
@keyframes lvLog { 0% { opacity: .35; color: #b9c6ff; } 5%, 80% { opacity: 1; color: #e8ebf5; } 100% { opacity: .35; color: #b9c6ff; } }
@media (max-width: 640px) { .lv-flow { flex-direction: column; gap: 4px; } .lv-step { flex-direction: row; text-align: left; } .lv-conn { display: none; } }

/* painel */
.lv-dash { padding: 16px; display: grid; gap: 12px; }
.lv-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
@media (max-width: 640px) { .lv-kpis { grid-template-columns: repeat(2, 1fr); } }
.lv-kpi, .lv-card { border: 1px solid var(--lc-line); border-radius: 12px; padding: 12px; background: #fff; min-width: 0; }
.lv-kpi small, .lv-card small { display: block; font-size: 11.5px; color: var(--lc-muted); }
.lv-kpi b { display: block; margin-top: 4px; font-size: 20px; font-weight: 600; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.lv-charts { display: grid; grid-template-columns: 1.2fr 1fr; gap: 10px; }
@media (max-width: 640px) { .lv-charts { grid-template-columns: 1fr; } }
.lv-bars { height: 110px; display: flex; align-items: flex-end; gap: 5px; margin-top: 10px; }
.lv-bars i { flex: 1; height: var(--h); border-radius: 5px 5px 2px 2px; background: linear-gradient(#6f86ff, #3d5cff); transform-origin: bottom; }
.lv-on .lv-bars i { animation: lvGrow .9s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i) * 60ms); }
@keyframes lvGrow { from { transform: scaleY(.15); opacity: .5; } }
.lv-on .lv-bars i:nth-child(11) { animation: lvPulse 2.4s ease-in-out infinite 1.2s; }
@keyframes lvPulse { 50% { filter: brightness(1.25); transform: scaleY(1.04); } }
.lv-line { width: 100%; height: 110px; margin-top: 10px; display: block; overflow: visible; }
.lv-line path:first-child { fill: none; stroke: #3d5cff; stroke-width: 2.2; stroke-dasharray: 520; stroke-dashoffset: 0; }
.lv-on .lv-line path:first-child { animation: lvDraw 2s cubic-bezier(.2, .8, .2, 1) both; }
.lv-on .lv-line path:first-child, .lv-on .lv-ok { will-change: stroke-dashoffset; }
@keyframes lvDraw { from { stroke-dashoffset: 520; } }
.lv-area { fill: rgba(61, 92, 255, .1); }

/* CRM */
.lv-kan { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; padding: 14px; min-height: 250px; }
.lv-col { background: #f7f9fc; border-radius: 12px; padding: 10px; min-width: 0; }
.lv-col p { font-size: 12px; font-weight: 600; color: var(--lc-muted); margin-bottom: 8px; display: flex; justify-content: space-between; }
.lv-col p span { font-weight: 500; background: #fff; border: 1px solid var(--lc-line); border-radius: 99px; padding: 0 7px; }
.lv-cardk { position: relative; background: #fff; border: 1px solid var(--lc-line); border-radius: 10px; padding: 9px 10px; margin-bottom: 8px; box-shadow: 0 2px 6px rgba(11, 13, 18, .04); }
.lv-cardk b { display: block; font-size: 12px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lv-cardk small { display: block; font-size: 11px; color: var(--lc-muted); margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lv-cardk em { position: absolute; left: 0; top: 10px; bottom: 10px; width: 3px; border-radius: 3px; background: #3d5cff; }
.lv-mover { position: absolute; left: 24px; top: 150px; width: calc(25% - 20px); box-shadow: 0 18px 30px -16px rgba(61, 92, 255, .55); border-color: rgba(61, 92, 255, .4); }
.lv-on .lv-mover { animation: lvMove 7s cubic-bezier(.6, 0, .3, 1) infinite; }
@keyframes lvMove { 0%, 12% { transform: translateX(0) rotate(0); } 18% { transform: translateX(0) rotate(-2deg) translateY(-6px); } 32%, 42% { transform: translateX(calc(100% + 13px)); } 58%, 68% { transform: translateX(calc(200% + 26px)); } 84%, 100% { transform: translateX(calc(300% + 39px)); } }
@media (max-width: 640px) { .lv-kan { grid-template-columns: repeat(2, 1fr); } .lv-mover { display: none; } }

/* chat */
.lv-chat { display: flex; flex-direction: column; gap: 8px; padding: 16px; height: 270px; overflow: hidden; background: linear-gradient(#f7f9fc, #fff); }
.lv-msg { max-width: 78%; padding: 9px 12px; border-radius: 14px; font-size: 13px; line-height: 1.45; }
.lv-msg--in { align-self: flex-start; background: #fff; border: 1px solid var(--lc-line); border-bottom-left-radius: 4px; }
.lv-msg--out { align-self: flex-end; background: #3d5cff; color: #fff; border-bottom-right-radius: 4px; }
.lv-on .lv-msg { animation: lvMsg 12s infinite; animation-delay: calc(var(--i) * 1.4s); }
@keyframes lvMsg { 0% { opacity: 0; transform: translateY(8px); } 4%, 88% { opacity: 1; transform: none; } 96%, 100% { opacity: 0; } }
.lv-typing { align-self: flex-end; display: inline-flex; gap: 4px; padding: 10px 12px; border-radius: 14px; background: #eef1ff; }
.lv-typing i { width: 6px; height: 6px; border-radius: 99px; background: #3d5cff; opacity: .4; }
.lv-on .lv-typing i { animation: lvDot 1.2s infinite; } .lv-typing i:nth-child(2) { animation-delay: .2s !important; } .lv-typing i:nth-child(3) { animation-delay: .4s !important; }
@keyframes lvDot { 50% { opacity: 1; transform: translateY(-3px); } }
.lv-chatbar { display: flex; justify-content: space-between; align-items: center; padding: 10px 14px; border-top: 1px solid var(--lc-line); font-size: 12px; color: var(--lc-muted); }
.lv-chatbar em { font-style: normal; color: var(--lc-ok); display: inline-flex; align-items: center; gap: 6px; }
.lv-chatbar em::before { content: ""; width: 7px; height: 7px; border-radius: 99px; background: #2bc48a; }

/* código */
.lv-code { padding: 14px 0; background: #0f1218; font: 12.5px/1.75 ui-monospace, SFMono-Regular, Menlo, monospace; color: #c9d1e3; }
.lv-cl { display: flex; gap: 14px; padding: 0 16px; white-space: pre; overflow: hidden; }
.lv-cl u { text-decoration: none; color: #4b5468; width: 16px; text-align: right; flex-shrink: 0; }
.lv-cl span { overflow: hidden; }
.lv-on .lv-cl span { animation: lvType 9s steps(32) infinite; animation-delay: calc(var(--i) * .35s); }
@keyframes lvType { 0% { clip-path: inset(0 100% 0 0); } 8%, 92% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 100% 0 0); } }
.c-k { color: #b9a2ff; } .c-f { color: #7fb3ff; } .c-s { color: #8fe0b0; } .c-p { color: #c9d1e3; }
.lv-term { padding: 12px 16px; background: #0b0d12; border-top: 1px solid rgba(255, 255, 255, .06); font: 12px/1.7 ui-monospace, SFMono-Regular, Menlo, monospace; color: #8a93a8; }

.lv-term p.ok { color: #6fdc9a; }
.lv-on .lv-term p { animation: lvLog2 9s infinite; animation-delay: calc(3.4s + var(--i) * .45s); }
@keyframes lvLog2 { 0% { opacity: 0; } 3%, 60% { opacity: 1; } 70%, 100% { opacity: 0; } }

/* segurança */
.lv-sec { display: grid; grid-template-columns: 150px 1fr; gap: 22px; align-items: center; padding: 22px; }
@media (max-width: 640px) { .lv-sec { grid-template-columns: 1fr; justify-items: center; } }
.lv-shield { width: 130px; height: auto; overflow: visible; }
.lv-sh { fill: #eef1ff; stroke: #3d5cff; stroke-width: 2; }
.lv-ok { fill: none; stroke: #3d5cff; stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 80; stroke-dashoffset: 0; }
.lv-on .lv-ok { animation: lvTick 4s ease-in-out infinite; }
@keyframes lvTick { 0%, 20% { stroke-dashoffset: 80; } 45%, 90% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: 80; } }
.lv-scan { fill: rgba(61, 92, 255, .55); }
.lv-on .lv-scan { animation: lvScan 4s ease-in-out infinite; }
@keyframes lvScan { 0% { transform: translateY(6px); opacity: 0; } 10% { opacity: 1; } 50% { transform: translateY(130px); opacity: 1; } 60%, 100% { opacity: 0; transform: translateY(130px); } }
.lv-sec ul { display: grid; gap: 9px; }
.lv-sec li { display: flex; align-items: center; gap: 10px; font-size: 13.5px; color: var(--lc-text); }
.lv-sec li span { width: 18px; height: 18px; border-radius: 99px; border: 1.5px solid #d7dde5; flex-shrink: 0; position: relative; transition: all .3s; }
.lv-on .lv-sec li span { animation: lvChk 6s infinite; animation-delay: calc(var(--i) * .5s); }
@keyframes lvChk { 0%, 5% { background: #fff; border-color: #d7dde5; } 10%, 85% { background: #3d5cff; border-color: #3d5cff; box-shadow: inset 0 0 0 4px #3d5cff, inset 0 0 0 6px #fff; } 100% { background: #fff; border-color: #d7dde5; } }

/* celular */
.lv--phone { display: flex; flex-direction: column; align-items: center; }
.lv-phone { position: relative; width: 250px; max-width: 100%; aspect-ratio: 9 / 18.5; border-radius: 38px; background: #0b0d12; padding: 10px; box-shadow: 0 40px 80px -40px rgba(11, 13, 18, .6); }
.lv-notch { position: absolute; top: 14px; left: 50%; width: 80px; height: 22px; border-radius: 99px; background: #000; transform: translateX(-50%); z-index: 2; }
.lv-screen { position: relative; height: 100%; border-radius: 29px; background: #f2f5fa; padding: 46px 14px 14px; overflow: hidden; }
.lv-hello { font-size: 17px; font-weight: 600; color: var(--lc-ink); }
.lv-sub { font-size: 12px; color: var(--lc-muted); margin-bottom: 12px; }
.lv-item { display: flex; gap: 10px; align-items: center; background: #fff; border-radius: 14px; padding: 10px; margin-bottom: 8px; box-shadow: 0 2px 6px rgba(11, 13, 18, .05); }
.lv-on .lv-item { animation: lvItem 8s infinite; animation-delay: calc(var(--i) * .25s); }
@keyframes lvItem { 0% { opacity: 0; transform: translateX(16px); } 5%, 92% { opacity: 1; transform: none; } 100% { opacity: 0; } }
.lv-item b { font-size: 11px; color: #3d5cff; background: #eef1ff; border-radius: 8px; padding: 5px 6px; font-variant-numeric: tabular-nums; }
.lv-item strong { display: block; font-size: 12.5px; font-weight: 600; color: var(--lc-ink); }
.lv-item small { display: block; font-size: 11px; color: var(--lc-muted); }
.lv-toast { position: absolute; left: 12px; right: 12px; top: 40px; background: #0b0d12; color: #fff; font-size: 11.5px; border-radius: 12px; padding: 10px 12px; opacity: 0; transform: translateY(-14px); }
.lv-on .lv-toast { animation: lvToast 8s infinite 3s; }
@keyframes lvToast { 0% { opacity: 0; transform: translateY(-14px); } 6%, 30% { opacity: 1; transform: none; } 38%, 100% { opacity: 0; transform: translateY(-14px); } }
.lv-tabs { position: absolute; left: 14px; right: 14px; bottom: 12px; display: flex; justify-content: space-around; background: #fff; border-radius: 16px; padding: 10px; }
.lv-tabs i { width: 20px; height: 4px; border-radius: 4px; background: #d7dde5; }
.lv-tabs i.on { background: #3d5cff; }

/* financeiro */
.lv-fin { display: grid; grid-template-columns: 1.1fr 1fr; gap: 12px; padding: 16px; }
@media (max-width: 640px) { .lv-fin { grid-template-columns: 1fr; } }
.lv-big { display: block; font-size: 24px; font-weight: 600; letter-spacing: -.02em; margin-top: 4px; font-variant-numeric: tabular-nums; }
.lv-line--fin { height: 100px; }
.lv-txr { display: flex; justify-content: space-between; gap: 8px; font-size: 12.5px; padding: 8px 0; border-bottom: 1px solid var(--lc-line); }
.lv-txr:last-child { border-bottom: 0; }
.lv-txr span { color: var(--lc-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lv-txr b { font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
.lv-txr--in b { color: #0f7a5b; } .lv-txr--out b { color: #b42318; } .lv-txr--pend b { color: #b45309; }
.lv-on .lv-txr { animation: lvTx 9s infinite; animation-delay: calc(var(--i) * .5s); }
@keyframes lvTx { 0% { opacity: 0; transform: translateY(6px); } 5%, 90% { opacity: 1; transform: none; } 100% { opacity: 0; } }
.lv-tx { overflow: hidden; }

/* imagens geradas e composições */
.lv-media { margin: 0; border-radius: var(--lc-r-lg); overflow: hidden; border: 1px solid var(--lc-line); box-shadow: var(--lc-shadow-lg); background: #eef1f6; aspect-ratio: 16 / 9; }
.lv-media img { width: 100%; height: 100%; object-fit: cover; display: block; transform: scale(1.04); transition: transform 1.6s cubic-bezier(.2, .8, .2, 1); }
.lv-on.lv-media img, .lv-media.lv-on img { transform: scale(1); }
.lv-on .lv-media img { transform: scale(1); }
.lv-media--wide { margin: 0 0 40px; aspect-ratio: 21 / 8; }
@media (max-width: 767px) { .lv-media--wide { aspect-ratio: 16 / 9; } }
.lv-media--stack { margin-top: 18px; }
.lv-heroside .lv { margin-top: 0; }
.lv-pair { display: grid; gap: 18px; grid-template-columns: minmax(0, 1fr); margin-bottom: 24px; }
.lv-pair .lv { margin-top: 0; }
@media (min-width: 1024px) { .lv-pair { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .lv-pair--3 { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, 1fr); } }
.lv-pair--3 { margin-bottom: 28px; }
.lct-dark .lv-pair { margin-bottom: 32px; }
@media (prefers-reduced-motion: reduce) { .lv *, .lv-media img { animation: none !important; transition: none !important; } .lv-msg, .lv-item, .lv-txr, .lv-term p { opacity: 1 !important; transform: none !important; } .lv-cl span { clip-path: none !important; } }
.lv-on .lv-msg, .lv-on .lv-item, .lv-on .lv-txr, .lv-on .lv-term p, .lv-on .lv-cl span, .lv-on .lv-log p { animation-fill-mode: both; }

/* ---------- v3: responsivo e novos visuais ---------- */
.lv-win { max-width: 100%; }
.lv-svg--tall { display: none; }
@media (max-width: 640px) { .lv--hub .lv-svg--wide { display: none; } .lv--hub .lv-svg--tall { display: block; } .lv-svg { padding: 4px; } }
@media (max-width: 640px) {
  .lv-code { font-size: 11px; }
  .lv-cl { gap: 10px; padding: 0 12px; }
  .lv-term { font-size: 11px; padding: 10px 12px; }
  .lv-chat { height: 250px; padding: 12px; }
  .lv-msg { font-size: 12.5px; max-width: 86%; }
  .lv-kpi b { font-size: 17px; }
  .lv-dash { padding: 12px; }
  .lv-flow { padding: 14px 12px 6px; }
  .lv-log { margin: 4px 12px 12px; font-size: 11px; height: auto; }
  .lv-bar span { font-size: 11px; }
}
/* arquitetura em HTML */
.lv-arch { display: grid; grid-template-columns: minmax(0, 1fr) 44px; gap: 12px; padding: 18px; }
.lv-arch__layers { min-width: 0; }
.lv-arch__row { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 10px; align-items: center; }
.lv-arch__lbl { font-size: 12px; color: var(--lc-faint); letter-spacing: .02em; }
.lv-arch__boxes { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 8px; }
.lv-arch__box { display: flex; align-items: center; justify-content: center; text-align: center; min-height: 38px; padding: 6px 8px; border: 1px solid #d7dde5; border-radius: 10px; background: #fff; font-size: 12.5px; font-weight: 500; color: #1a1a1c; overflow: hidden; text-overflow: ellipsis; }
.lv-arch__box.is-hi { background: #eef1ff; border-color: #9fb0ff; color: #2f47d8; }
.lv-on .lv-arch__box.is-hi { animation: lvHi 2.4s ease-in-out infinite; }
@keyframes lvHi { 50% { box-shadow: 0 0 0 4px rgba(61, 92, 255, .14); } }
.lv-arch__link { position: relative; height: 26px; margin-left: 122px; display: flex; justify-content: space-around; }
.lv-arch__link em { position: relative; width: 2px; height: 100%; background: repeating-linear-gradient(#b9c6ff 0 4px, transparent 4px 8px); }
.lv-arch__link em::after { content: ""; position: absolute; left: -3px; top: 0; width: 8px; height: 8px; border-radius: 99px; background: #3d5cff; box-shadow: 0 0 8px rgba(61, 92, 255, .8); opacity: 0; }
.lv-on .lv-arch__link em::after { animation: lvDrop 1.8s ease-in infinite; animation-delay: calc(var(--i) * .35s); }
.lv-on .lv-arch__link em:nth-child(2)::after { animation-delay: calc(var(--i) * .35s + .9s); }
@keyframes lvDrop { 0% { top: -4px; opacity: 0; } 15% { opacity: 1; } 85% { opacity: 1; } 100% { top: 22px; opacity: 0; } }
.lv-arch__side { position: relative; border: 1px dashed #c9d2de; border-radius: 12px; background: #f7f9fc; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.lv-arch__side span { writing-mode: vertical-rl; transform: rotate(180deg); font-size: 11.5px; color: var(--lc-faint); letter-spacing: .04em; }
.lv-arch__side i { position: absolute; left: 6px; right: 6px; height: 2px; top: 0; background: #3d5cff; opacity: .5; }
.lv-on .lv-arch__side i { animation: lvScanY 3.2s ease-in-out infinite; }
@keyframes lvScanY { 0% { top: 4%; } 50% { top: 94%; } 100% { top: 4%; } }
@media (max-width: 640px) {
  .lv-arch { grid-template-columns: minmax(0, 1fr); padding: 14px; }
  .lv-arch__row { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .lv-arch__boxes { grid-auto-flow: row; grid-template-columns: repeat(auto-fit, minmax(84px, 1fr)); }
  .lv-arch__link { margin-left: 0; height: 22px; }
  .lv-arch__side { height: 34px; }
  .lv-arch__side span { writing-mode: horizontal-tb; transform: none; }
  .lv-arch__side i { top: 6px; bottom: 6px; left: 0; width: 2px; height: auto; right: auto; }
  .lv-on .lv-arch__side i { animation-name: lvScanX; }
  @keyframes lvScanX { 0% { left: 2%; } 50% { left: 97%; } 100% { left: 2%; } }
}
/* orquestração (hero) */
.lv--orq { margin: 0; }
.lv--orq .lv-win { border-radius: 22px; box-shadow: 0 50px 120px -50px rgba(23, 37, 120, .45), 0 2px 8px rgba(11, 13, 18, .05); }
.lv-orq { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr) minmax(0, 1fr); align-items: center; gap: 0; padding: 34px 28px 22px; background: radial-gradient(60% 80% at 50% 50%, rgba(61, 92, 255, .07), transparent 70%); }
.lv-orq__col { display: grid; gap: 14px; position: relative; z-index: 1; }
.lv-orq__item { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--lc-line); border-radius: 14px; background: #fff; box-shadow: 0 6px 18px -12px rgba(11, 13, 18, .25); }
.lv-orq__item b { font-size: 14px; font-weight: 500; color: var(--lc-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lv-orq__ic { flex: 0 0 34px; width: 34px; height: 34px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; background: #f2f5fa; color: #1a1a1c; transition: all .3s; }
.lv-orq__ic svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.lv-orq__wire { position: absolute; top: 50%; width: 46px; height: 2px; background: repeating-linear-gradient(90deg, #c6d0ff 0 5px, transparent 5px 9px); }
.lv-orq__col--in .lv-orq__wire { left: 100%; }
.lv-orq__col--out .lv-orq__wire { right: 100%; }
.lv-orq__wire i { position: absolute; top: -3px; left: 0; width: 8px; height: 8px; border-radius: 99px; background: #3d5cff; box-shadow: 0 0 10px rgba(61, 92, 255, .9); opacity: 0; }
.lv-on .lv-orq__wire i { animation: lvWire 4s linear infinite; animation-delay: calc(var(--i) * 1s); }
.lv-on .lv-orq__col--out .lv-orq__wire i { animation-delay: calc(var(--i) * 1s + .6s); }
@keyframes lvWire { 0% { left: 0; opacity: 0; } 4% { opacity: 1; } 18% { left: calc(100% - 8px); opacity: 1; } 21%, 100% { left: calc(100% - 8px); opacity: 0; } }
.lv-on .lv-orq__col--in .lv-orq__ic { animation: lvIcOn 4s infinite; animation-delay: calc(var(--i) * 1s); }
.lv-on .lv-orq__col--out .lv-orq__ic { animation: lvIcOn 4s infinite; animation-delay: calc(var(--i) * 1s + .9s); }
@keyframes lvIcOn { 0%, 100% { background: #f2f5fa; color: #1a1a1c; } 4%, 20% { background: #3d5cff; color: #fff; } 28% { background: #f2f5fa; color: #1a1a1c; } }
.lv-orq__core { position: relative; margin: 0 46px; aspect-ratio: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; border-radius: 50%; background: #0b0d12; color: #fff; box-shadow: 0 30px 60px -24px rgba(11, 13, 18, .6), inset 0 0 0 1px rgba(255, 255, 255, .06); }
.lv-orq__ring { position: absolute; inset: -10px; border-radius: 50%; border: 1.5px solid rgba(61, 92, 255, .55); opacity: 0; }
.lv-on .lv-orq__ring { animation: lvRing2 2.6s ease-out infinite; }
@keyframes lvRing2 { 0% { transform: scale(.92); opacity: .8; } 100% { transform: scale(1.18); opacity: 0; } }
.lv-orq__chip { text-align: center; }
.lv-orq__chip small { display: block; font-size: 11px; color: rgba(232, 235, 245, .6); letter-spacing: .04em; }
.lv-orq__chip b { display: block; font-size: 17px; font-weight: 600; margin-top: 2px; }
.lv-orq__mods { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.lv-orq__mods span { font-size: 11.5px; padding: 5px 10px; border-radius: 99px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .1); text-align: center; color: #e8ebf5; }
.lv-orq__mods .is-ai { background: #3d5cff; border-color: #3d5cff; color: #fff; }
.lv-on .lv-orq__mods .is-ai { animation: lvHi 2s ease-in-out infinite; }
.lv-orq__log { margin: 0 28px 24px; padding: 12px 16px; border-radius: 14px; background: #f7f9fc; border: 1px solid var(--lc-line); height: 46px; overflow: hidden; position: relative; font: 12.5px/22px ui-monospace, SFMono-Regular, Menlo, monospace; color: var(--lc-muted); }
.lv-orq__log p { position: absolute; left: 16px; right: 16px; top: 12px; display: flex; align-items: center; gap: 10px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; opacity: 0; }
.lv-orq__log p:first-child { opacity: 1; }
.lv-orq__log p i { flex: 0 0 8px; height: 8px; border-radius: 99px; background: #2bc48a; box-shadow: 0 0 0 3px rgba(43, 196, 138, .18); }
.lv-on .lv-orq__log p { animation: lvTicker 10s infinite both; animation-delay: calc(var(--i) * 2s); }
.lv-on .lv-orq__log p:first-child { opacity: 0; }
@keyframes lvTicker { 0% { opacity: 0; transform: translateY(12px); } 3%, 17% { opacity: 1; transform: none; } 20%, 100% { opacity: 0; transform: translateY(-12px); } }
@media (max-width: 900px) {
  .lv-orq { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 20px 16px 14px; }
  .lv-orq__col { grid-template-columns: 1fr 1fr; gap: 8px; }
  .lv-orq__item { flex-direction: column; align-items: flex-start; gap: 8px; padding: 10px 12px; }
  .lv-orq__item b { font-size: 12.5px; white-space: normal; line-height: 1.3; }
  .lv-orq__wire { display: none; }
  .lv-orq__core { margin: 18px auto; width: min(220px, 70%); }
  .lv-orq__core::before, .lv-orq__core::after { content: ""; position: absolute; left: 50%; width: 2px; height: 18px; background: repeating-linear-gradient(#b9c6ff 0 4px, transparent 4px 8px); }
  .lv-orq__core::before { bottom: 100%; } .lv-orq__core::after { top: 100%; }
  .lv-orq__log { margin: 0 16px 16px; font-size: 11.5px; padding: 12px; }
  .lv-orq__log p { left: 12px; right: 12px; }
}
/* números do escritório */
.lc-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.lc-stat { padding: 26px 24px; border-radius: var(--lc-r-lg); background: #fff; border: 1px solid var(--lc-line); }
.lc-stat b { display: block; font-size: clamp(34px, 4vw, 48px); line-height: 1; font-weight: 500; letter-spacing: -.03em; color: var(--lc-ink); font-variant-numeric: tabular-nums; }
.lc-stat span { display: block; margin-top: 10px; font-size: 14.5px; color: var(--lc-muted); }
@media (max-width: 767px) { .lc-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .lc-stat { padding: 18px 16px; } }
/* abas "o que construímos" */
.lc-build { margin-top: 48px; }
.lc-build__panel { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 56px; align-items: center; padding-top: 48px; }
.lc-build__panel .lv { margin: 0; }
.lc-build__panel h3 { font-size: clamp(24px, 2.4vw, 32px); line-height: 1.15; letter-spacing: -.02em; font-weight: 500; color: var(--lc-ink); }
.lc-build__panel p { margin-top: 14px; color: var(--lc-muted); }
.lc-build__panel .lc-checks { margin-top: 22px; }
.lc-build__panel .lc-link { margin-top: 26px; }
@media (max-width: 1023px) { .lc-build__panel { grid-template-columns: minmax(0, 1fr); gap: 32px; padding-top: 28px; } .lc-build__panel > div:first-child { text-align: center; } .lc-build__panel .lc-checks { display: inline-grid; text-align: left; } }
.lc-tabbar { position: relative; display: flex; justify-content: center; border-bottom: 1px solid var(--lc-line); }
.lc-tabbar button { padding: 14px 22px; font-size: 15px; font-weight: 500; color: var(--lc-muted); cursor: pointer; background: none; border: 0; }
.lc-tabbar button[data-state="selected"] { color: var(--lc-ink); }
.lc-tabbar [data-active-tab-bar] { position: absolute; bottom: -1px; height: 2px; background: var(--lc-primary); transition: all .3s ease; }
.lc-tabpills { display: none; flex-wrap: wrap; justify-content: center; gap: 8px; }
.lc-tabpills button { padding: 8px 14px; border-radius: 99px; border: 1px solid var(--lc-line); background: #fff; font-size: 13.5px; font-weight: 500; color: var(--lc-muted); cursor: pointer; transition: all .25s; }
.lc-tabpills button[data-mobile-active="true"] { background: var(--lc-primary); border-color: var(--lc-primary); color: #fff; }
@media (max-width: 1023px) { .lc-tabbar { display: none; } .lc-tabpills { display: flex; } }
[data-tab-content].hidden { display: none; }
.lc-tabpane-enter { animation: lcPane .5s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes lcPane { from { opacity: 0; transform: translateY(10px); } }
/* home v3 */
.lc-home-hero { padding-bottom: clamp(40px, 6vw, 72px); }
.lc-home-hero__text { max-width: 980px; }
.lc-home-hero__text .lc-display { max-width: 20ch; margin-inline: auto; }
.lc-home-hero__visual { position: relative; max-width: 1120px; margin: clamp(48px, 6vw, 80px) auto 0; }
.lc-home-hero__visual::before { content: ""; position: absolute; inset: 8% -4% -6%; background: radial-gradient(50% 60% at 50% 40%, rgba(61, 92, 255, .18), transparent 70%); filter: blur(30px); z-index: -1; }
.lc-section--tight { padding-block: 8px clamp(56px, 7vw, 96px); }
.lc-about__img { aspect-ratio: 4 / 3; }
.lc-soft__img { aspect-ratio: 4 / 3; }
.lc-quality__vis { margin-bottom: 0; }
.lct-dark .lc-quality__vis { margin-bottom: 0; }

/* respiros entre títulos e conteúdo */
.lc-head + *:not([class*="mt-"]):not(p) { margin-top: 48px; }
@media (max-width: 767px) { .lc-head + *:not([class*="mt-"]):not(p) { margin-top: 32px; } }
.lc-block > h2 + :is(div, ul, ol):not([class*="mt-"]) { margin-top: 24px; }
.lc-block > h2 + p + :is(div, ul, ol):not([class*="mt-"]) { margin-top: 24px; }
/* ---------- menu: cards e mini animações ---------- */
.lc-mega__cols { display: grid; grid-template-columns: minmax(0, 1fr) 236px; gap: 18px; }
.lc-mega__ph { border-bottom: 1px solid var(--lc-line); }
.lc-mega__links li { opacity: 1; transform: none; }
.lc-mega.active .lc-mega__panel:not([hidden]) .lc-mega__links li, .lc-mega.active .lc-mega__grid li { animation: lcMIn .45s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i) * 30ms); }
@keyframes lcMIn { from { opacity: 0; transform: translateY(6px); } }
.lc-mfeat { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 16px; border-radius: 18px; overflow: hidden; color: #e8ebf5; background: radial-gradient(120% 90% at 100% 0%, rgba(61, 92, 255, .55), transparent 55%), #0b0d12; box-shadow: 0 20px 40px -24px rgba(11, 13, 18, .6); transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s; isolation: isolate; }
.lc-mfeat::after { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 1px; background: linear-gradient(140deg, rgba(255, 255, 255, .28), transparent 40%, rgba(61, 92, 255, .5)); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }
.lc-mfeat:hover { transform: translateY(-3px); box-shadow: 0 28px 50px -24px rgba(23, 37, 120, .7); }
.lc-mfeat__k { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: rgba(232, 235, 245, .6); margin-top: 6px; }
.lc-mfeat strong { font-size: 17px; font-weight: 500; color: #fff; line-height: 1.2; }
.lc-mfeat small { font-size: 13px; line-height: 1.45; color: rgba(232, 235, 245, .72); }
.lc-mfeat__go { margin-top: auto; padding-top: 10px; display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: 500; color: #fff; }
.lc-mfeat__go .lc-i { transition: transform .3s; }
.lc-mfeat:hover .lc-mfeat__go .lc-i { transform: translateX(4px); }
.lc-mfeat--img { padding: 0 0 16px; }
.lc-mfeat--img > :not(.lc-mfeat__media) { margin-inline: 16px; }
.lc-mfeat__media { display: block; aspect-ratio: 16 / 10; overflow: hidden; }
.lc-mfeat__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s cubic-bezier(.2, .8, .2, 1); }
.lc-mfeat:hover .lc-mfeat__media img { transform: scale(1.06); }
.lc-mega__sect { grid-template-columns: 260px minmax(0, 1fr); }
.lc-mega__sectr { background: rgba(255, 255, 255, .7); border-radius: 18px; padding: 18px 18px 12px; }
.lc-mega__sectr .lc-mega__grid { background: none; padding: 0; }
.lc-mfeat--nav { margin-bottom: 18px; }
/* mini ilustrações */
.lc-minivis { position: relative; height: 74px; border-radius: 12px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .08); overflow: hidden; padding: 10px; }
.lc-mini--code { display: grid; align-content: center; gap: 7px; }
.lc-mini--code i { display: block; height: 6px; width: var(--w); border-radius: 4px; background: linear-gradient(90deg, #8ea2ff, #b9a2ff); transform-origin: left; animation: lcType 3.2s ease-in-out infinite; }
.lc-mini--code i:nth-child(2) { animation-delay: .25s; background: linear-gradient(90deg, #6fdc9a, #8fe0b0); } .lc-mini--code i:nth-child(3) { animation-delay: .5s; } .lc-mini--code i:nth-child(4) { animation-delay: .75s; background: rgba(255, 255, 255, .3); }
@keyframes lcType { 0% { transform: scaleX(0); } 30%, 80% { transform: scaleX(1); } 100% { transform: scaleX(0); opacity: .4; } }
.lc-mini--chat { display: flex; flex-direction: column; gap: 6px; justify-content: center; }
.lc-mini--chat i { display: block; height: 12px; border-radius: 8px; animation: lcBub 3.6s ease-in-out infinite both; }
.lc-mini--chat .in { width: 55%; background: rgba(255, 255, 255, .25); } .lc-mini--chat .out { width: 62%; align-self: flex-end; background: #3d5cff; }
.lc-mini--chat i:nth-child(2) { animation-delay: .6s; } .lc-mini--chat i:nth-child(3) { animation-delay: 1.2s; width: 38%; }
@keyframes lcBub { 0% { opacity: 0; transform: translateY(6px); } 15%, 80% { opacity: 1; transform: none; } 100% { opacity: 0; } }
@keyframes lcPulse { 70% { box-shadow: 0 0 0 12px rgba(61, 92, 255, 0); } 100% { box-shadow: 0 0 0 0 rgba(61, 92, 255, 0); } }
@keyframes lcFlow { to { background-position: 130% 50%; } }
.lc-mini--shield span { position: absolute; left: 50%; top: 50%; width: 38px; height: 46px; margin: -23px 0 0 -19px; background: rgba(61, 92, 255, .35); border: 2px solid #8ea2ff; clip-path: polygon(50% 0, 100% 18%, 100% 55%, 50% 100%, 0 55%, 0 18%); }
.lc-mini--shield em { position: absolute; left: 10px; right: 10px; height: 2px; top: 10px; background: #8ea2ff; box-shadow: 0 0 10px #8ea2ff; animation: lcScan 2.4s ease-in-out infinite; }
@keyframes lcScan { 50% { top: calc(100% - 12px); } }
.lc-mini--line svg { width: 100%; height: 100%; overflow: visible; }
.lc-mini--line path { fill: none; stroke: #8ea2ff; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 160; animation: lcDraw 3s ease-in-out infinite; }
@keyframes lcDraw { 0% { stroke-dashoffset: 160; } 50%, 85% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: -160; } }
.lc-mini--bars { display: flex; align-items: flex-end; gap: 6px; }
.lc-mini--bars i { flex: 1; height: var(--h); border-radius: 4px 4px 2px 2px; background: linear-gradient(#8ea2ff, #3d5cff); transform-origin: bottom; animation: lcGrow 2.8s ease-in-out infinite; }
.lc-mini--bars i:nth-child(2) { animation-delay: .1s; } .lc-mini--bars i:nth-child(3) { animation-delay: .2s; } .lc-mini--bars i:nth-child(4) { animation-delay: .3s; } .lc-mini--bars i:nth-child(5) { animation-delay: .4s; } .lc-mini--bars i:nth-child(6) { animation-delay: .5s; }
@keyframes lcGrow { 0%, 100% { transform: scaleY(.35); } 50% { transform: scaleY(1); } }
.lc-mini--steps { display: flex; align-items: center; gap: 0; padding: 0 14px; }
.lc-mini--steps i { position: relative; flex: 1; height: 2px; background: rgba(255, 255, 255, .15); }
.lc-mini--steps i::before { content: ""; position: absolute; left: 0; top: -6px; width: 14px; height: 14px; border-radius: 99px; background: #0b0d12; border: 2px solid rgba(255, 255, 255, .35); animation: lcStep 4s infinite; }
.lc-mini--steps i:nth-child(2)::before { animation-delay: 1s; } .lc-mini--steps i:nth-child(3)::before { animation-delay: 2s; } .lc-mini--steps i:nth-child(4)::before { animation-delay: 3s; }
@keyframes lcStep { 0%, 100% { background: #0b0d12; border-color: rgba(255, 255, 255, .35); } 10%, 30% { background: #3d5cff; border-color: #8ea2ff; box-shadow: 0 0 12px rgba(61, 92, 255, .8); } }
@media (prefers-reduced-motion: reduce) { .lc-minivis *, .lc-minivis::after, .lc-mega.active li { animation: none !important; } }
/* ---------- rodapé v3 ---------- */
.lc-footer--v3 { background: #f7f8fb; border-top: 0; padding-top: clamp(40px, 6vw, 72px); }
.lc-fcta { position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 28px; padding: clamp(28px, 4vw, 48px); border-radius: 28px; background: #0b0d12; color: #e8ebf5; overflow: hidden; isolation: isolate; }
.lc-fcta__glow { position: absolute; inset: -40% -10% auto auto; width: 70%; height: 180%; background: radial-gradient(closest-side, rgba(61, 92, 255, .55), transparent 70%); z-index: -1; animation: lcGlow 9s ease-in-out infinite alternate; }
.lc-fcta::before { content: ""; position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px); background-size: 44px 44px; -webkit-mask-image: radial-gradient(ellipse 70% 90% at 80% 20%, #000, transparent 75%); mask-image: radial-gradient(ellipse 70% 90% at 80% 20%, #000, transparent 75%); }
@keyframes lcGlow { to { transform: translate(-12%, 10%) scale(1.1); } }
.lc-fcta .lc-kicker { color: rgba(232, 235, 245, .6); }
.lc-fcta__txt { max-width: 640px; }
.lc-fcta__h { margin-top: 10px; font-size: clamp(26px, 3.2vw, 40px); line-height: 1.1; letter-spacing: -.025em; font-weight: 500; color: #fff; }
.lc-fcta__p { margin-top: 12px; color: rgba(232, 235, 245, .7); font-size: 16px; }
.lc-fcta__act { display: flex; flex-wrap: wrap; gap: 10px; }
.lc-fbtn { display: inline-flex; align-items: center; gap: 8px; height: 50px; padding: 0 20px; border-radius: 99px; font-size: 15px; font-weight: 500; color: #fff; border: 1px solid rgba(255, 255, 255, .2); transition: background .25s, transform .25s; }
.lc-fbtn svg { width: 18px; height: 18px; }
.lc-fbtn:hover { background: rgba(255, 255, 255, .1); transform: translateY(-2px); }
.lc-fbtn--solid { background: #3d5cff; border-color: #3d5cff; }
.lc-fbtn--solid:hover { background: #2f4be6; }
.lc-footer--v3 .lc-footer__grid { margin-top: clamp(40px, 5vw, 64px); grid-template-columns: 1fr 1fr; gap: 36px 24px; }
@media (min-width: 1024px) { .lc-footer--v3 .lc-footer__grid { grid-template-columns: 1.4fr repeat(3, 1fr); gap: 32px; } }
.lc-fcol--contact { grid-column: 1 / -1; display: grid; gap: 12px; align-content: start; }
@media (min-width: 1024px) { .lc-fcol--contact { grid-column: auto; } }
.lc-fcontact { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 16px; background: #fff; border: 1px solid var(--lc-line); color: var(--lc-ink); font-size: 14.5px; transition: border-color .25s, transform .25s, box-shadow .25s; word-break: break-word; }
.lc-fcontact svg { width: 20px; height: 20px; flex-shrink: 0; color: var(--lc-primary); }
.lc-fcontact small { display: block; font-size: 12px; color: var(--lc-muted); }
.lc-fcontact:hover { border-color: rgba(61, 92, 255, .4); transform: translateY(-2px); box-shadow: 0 12px 24px -16px rgba(23, 37, 120, .4); }
.lc-footer--v3 .lc-footer__bottom { align-items: center; margin-top: clamp(40px, 5vw, 56px); padding: 22px 0 28px; color: var(--lc-muted); }
.lc-footer__legal { display: flex; gap: 20px; }
.lc-footer__legal a:hover { color: var(--lc-primary); }
.lc-footer__sig { opacity: .45; transition: opacity .3s; display: inline-flex; }
.lc-footer__sig:hover { opacity: .9; }
.lc-footer__sig img { width: 96px; height: auto; }
@media (max-width: 767px) { .lc-footer--v3 .lc-footer__bottom { flex-direction: column; align-items: flex-start; gap: 14px; } .lc-fcta__act, .lc-fbtn { width: 100%; justify-content: center; } }

.lc-footer--v3 .lc-footer__bottom { display: grid; grid-template-columns: 1fr auto 1fr; }
.lc-footer--v3 .lc-footer__legal { justify-self: end; }
.lc-footer__legal a { color: var(--lc-muted) !important; }
.lc-footer__legal a:hover { color: var(--lc-primary) !important; }
@media (max-width: 767px) { .lc-footer--v3 .lc-footer__bottom { display: flex; flex-direction: column; align-items: center; text-align: center; padding-bottom: 96px; } .lc-footer--v3 .lc-footer__legal { justify-self: auto; } }
.lc-mfeat--nav { margin-top: 14px; }
.lc-footer__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; }
.lc-footer--v3 .lc-footer__legal { justify-self: auto; }
@media (max-width: 767px) { .lc-footer__meta { flex-direction: column; } }
/* ---------- /link ---------- */
.lk { position: relative; min-height: 100vh; min-height: 100dvh; display: flex; justify-content: center; padding: max(28px, env(safe-area-inset-top)) 16px max(28px, env(safe-area-inset-bottom)); background: #f3f5fa; overflow: hidden; }
.lk-bg { position: fixed; inset: 0; pointer-events: none; z-index: 0; background-image: linear-gradient(rgba(11, 13, 18, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(11, 13, 18, .04) 1px, transparent 1px); background-size: 40px 40px; -webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, #000 30%, transparent 75%); mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, #000 30%, transparent 75%); }
.lk-bg i { position: absolute; width: 60vmax; height: 60vmax; border-radius: 50%; filter: blur(60px); opacity: .5; animation: lkBlob 16s ease-in-out infinite alternate; }
.lk-bg i:nth-child(1) { background: #c8d2ff; left: -25vmax; top: -30vmax; }
.lk-bg i:nth-child(2) { background: #dfe6ff; right: -30vmax; top: 10vmax; animation-delay: -5s; }
.lk-bg i:nth-child(3) { background: #e9e2ff; left: 10vmax; bottom: -40vmax; animation-delay: -9s; }
@keyframes lkBlob { to { transform: translate(6vmax, 4vmax) scale(1.1); } }
.lk-wrap { position: relative; z-index: 1; width: 100%; max-width: 460px; display: flex; flex-direction: column; }
.lk-head { text-align: center; padding: 30px 0 26px; animation: lkIn .7s cubic-bezier(.2, .8, .2, 1) both; }
.lk-name { margin-top: 6px; display: flex; justify-content: center; }
.lk-sig { width: 250px; height: auto; }
.lk-sig__f { fill: #0b0d12; }
.lk-bio { margin: 8px auto 0; max-width: 320px; font-size: 15px; line-height: 1.5; color: var(--lc-muted); }
.lk-list { display: grid; gap: 12px; }
.lk-list li { animation: lkIn .6s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.15s + var(--i) * .08s); }
@keyframes lkIn { from { opacity: 0; transform: translateY(14px); } }
.lk-card { position: relative; display: flex; align-items: center; gap: 14px; min-height: 84px; padding: 14px 16px 14px 14px; border-radius: 22px; background: rgba(255, 255, 255, .82); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, .9); box-shadow: 0 1px 2px rgba(11, 13, 18, .04), 0 16px 36px -24px rgba(23, 37, 120, .35); color: var(--lc-ink); transition: transform .3s cubic-bezier(.2, .8, .2, 1), box-shadow .3s, border-color .3s; -webkit-tap-highlight-color: transparent; }
.lk-card:hover, .lk-card:focus-visible { transform: translateY(-2px); border-color: rgba(61, 92, 255, .35); box-shadow: 0 22px 44px -24px rgba(23, 37, 120, .5); }
.lk-card:active { transform: scale(.985); }
.lk-ic { flex: 0 0 56px; width: 56px; height: 56px; border-radius: 16px; display: inline-flex; align-items: center; justify-content: center; background: #0b0d12; color: #fff; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); overflow: hidden; }
.lk-card--invest .lk-ic { background: linear-gradient(140deg, #13204f, #0b0d12); }
.lk-card--buy .lk-ic { background: linear-gradient(140deg, #1a2a6b, #0b0d12); }
.lk-card--rent .lk-ic { background: linear-gradient(140deg, #23185a, #0b0d12); }
.lk-txt { flex: 1; min-width: 0; }
.lk-txt strong { display: block; font-size: 16.5px; font-weight: 500; letter-spacing: -.01em; line-height: 1.25; }
.lk-txt small { display: block; margin-top: 3px; font-size: 13.5px; line-height: 1.4; color: var(--lc-muted); }
.lk-go { flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #eef1ff; color: var(--lc-primary); transition: transform .3s, background .3s, color .3s; }
.lk-card:hover .lk-go { background: var(--lc-primary); color: #fff; transform: rotate(-8deg) scale(1.05); }
.lk-social { display: flex; justify-content: center; gap: 12px; margin-top: 28px; animation: lkIn .6s .55s both; }
.lk-social a { width: 46px; height: 46px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #fff; color: var(--lc-ink); box-shadow: 0 10px 24px -16px rgba(23, 37, 120, .45); transition: transform .25s, color .25s; }
.lk-social a:hover { transform: translateY(-2px); color: var(--lc-primary); }
.lk-social svg { width: 20px; height: 20px; }
.lk-foot { margin-top: 22px; text-align: center; font-size: 12.5px; color: var(--lc-faint); }
/* ícones animados */
.lk-svg { width: 36px; height: 36px; overflow: visible; }
.lk-s { fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.lk-f { fill: #8ea2ff; }
.lk-orbit { fill: none; stroke: rgba(142, 162, 255, .35); stroke-width: 1.2; stroke-dasharray: 2 4; }
.lk-dot { fill: #8ea2ff; filter: drop-shadow(0 0 4px #8ea2ff); }
.lk-svg--tech .lk-f { animation: lkCore 2.4s ease-in-out infinite; transform-origin: 24px 24px; }
@keyframes lkCore { 50% { fill: #fff; transform: scale(.82); } }
.lk-pins { stroke-dasharray: 5; animation: lkPins 2.4s linear infinite; }
@keyframes lkPins { to { stroke-dashoffset: -20; } }
.lk-bar { fill: rgba(142, 162, 255, .55); transform-box: fill-box; transform-origin: bottom; animation: lkBar 3s ease-in-out infinite; }
.lk-bar:nth-of-type(2) { animation-delay: .2s; } .lk-bar:nth-of-type(3) { animation-delay: .4s; }
@keyframes lkBar { 0%, 100% { transform: scaleY(.55); } 50% { transform: scaleY(1); } }
.lk-trend { stroke: #8ea2ff; stroke-dasharray: 40; animation: lkDraw 3s ease-in-out infinite; }
@keyframes lkDraw { 0% { stroke-dashoffset: 40; } 45%, 85% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: -40; } }
.lk-roof { stroke-dasharray: 42; animation: lkDraw2 3.4s ease-in-out infinite; }
@keyframes lkDraw2 { 0% { stroke-dashoffset: 42; } 40%, 100% { stroke-dashoffset: 0; } }
.lk-door { fill: #8ea2ff; animation: lkDoor 3.4s ease-in-out infinite; }
@keyframes lkDoor { 0%, 30% { fill: rgba(142, 162, 255, .25); } 55%, 90% { fill: #ffd25e; } }
.lk-tag { fill: #3d5cff; transform-box: fill-box; transform-origin: center; animation: lkPop 3.4s ease-in-out infinite; }
.lk-plus { stroke-width: 2; transform-box: fill-box; transform-origin: center; animation: lkPop 3.4s ease-in-out infinite; }
@keyframes lkPop { 0%, 45% { transform: scale(0); } 60% { transform: scale(1.2); } 70%, 100% { transform: scale(1); } }
.lk-key { transform-origin: 17px 24px; animation: lkTurn 3s ease-in-out infinite; }
.lk-key .lk-s { stroke: #fff; }
@keyframes lkTurn { 0%, 20% { transform: translateX(-3px) rotate(0); } 45% { transform: translateX(2px) rotate(0); } 65%, 85% { transform: translateX(2px) rotate(-90deg); } 100% { transform: translateX(-3px) rotate(0); } }
@media (prefers-reduced-motion: reduce) { .lk *, .lk *::after, .lk-bg i { animation: none !important; } }
@media (max-width: 360px) { .lk-ic { flex-basis: 50px; width: 50px; height: 50px; } .lk-txt strong { font-size: 15.5px; } .lk-txt small { font-size: 12.5px; } }
/* ---------- contato v3 ---------- */
.lc-chans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
@media (max-width: 1023px) { .lc-chans { grid-template-columns: minmax(0, 1fr); gap: 10px; } }
.lc-chan { position: relative; display: flex; align-items: center; gap: 14px; padding: 18px; border-radius: 22px; background: #fff; border: 1px solid var(--lc-line); color: var(--lc-ink); box-shadow: 0 16px 36px -28px rgba(23, 37, 120, .35); transition: transform .3s cubic-bezier(.2, .8, .2, 1), border-color .3s, box-shadow .3s; min-width: 0; }
.lc-chan:hover { transform: translateY(-3px); border-color: rgba(61, 92, 255, .35); box-shadow: 0 24px 44px -26px rgba(23, 37, 120, .5); }
.lc-chan--wa { background: radial-gradient(120% 120% at 100% 0%, rgba(61, 92, 255, .5), transparent 55%), #0b0d12; border-color: #0b0d12; color: #fff; }
.lc-chan--wa .lc-chan__t small, .lc-chan--wa .lc-chan__t em { color: rgba(232, 235, 245, .7); }
.lc-chan__ic { position: relative; flex: 0 0 52px; width: 52px; height: 52px; border-radius: 16px; display: inline-flex; align-items: center; justify-content: center; background: var(--lc-primary-50, #eef1ff); color: var(--lc-primary); }
.lc-chan__ic svg { width: 24px; height: 24px; position: relative; z-index: 1; }
.lc-chan__ic--wa { background: #25d366; color: #fff; }
.lc-chan__ic--wa i { position: absolute; inset: 0; border-radius: inherit; border: 2px solid #25d366; animation: lcChanRing 2.2s ease-out infinite; }
@keyframes lcChanRing { from { transform: scale(1); opacity: .8; } to { transform: scale(1.45); opacity: 0; } }
.lc-chan__ic--mail svg { animation: lcMail 3s ease-in-out infinite; }
@keyframes lcMail { 0%, 60%, 100% { transform: none; } 70% { transform: translateY(-4px) rotate(-6deg); } 80% { transform: translateY(0) rotate(4deg); } }
.lc-chan__ic--form i { position: absolute; left: 14px; right: 14px; bottom: 12px; height: 2px; border-radius: 2px; background: var(--lc-primary); transform-origin: left; animation: lcFill 2.6s ease-in-out infinite; }
@keyframes lcFill { 0% { transform: scaleX(0); } 60%, 100% { transform: scaleX(1); opacity: 0; } }
.lc-chan__t { flex: 1; min-width: 0; }
.lc-chan__t small { display: block; font-size: 12.5px; color: var(--lc-muted); }
.lc-chan__t strong { display: block; font-size: 16.5px; font-weight: 500; line-height: 1.3; margin-top: 2px; overflow-wrap: anywhere; }
.lc-chan__t em { display: block; font-style: normal; font-size: 13px; color: var(--lc-faint); margin-top: 2px; }
.lc-chan__go { flex: 0 0 34px; width: 34px; height: 34px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(61, 92, 255, .1); color: var(--lc-primary); transition: transform .3s; }
.lc-chan--wa .lc-chan__go { background: rgba(255, 255, 255, .12); color: #fff; }
.lc-chan:hover .lc-chan__go { transform: rotate(-10deg) scale(1.08); }
.lc-contact-aside { display: grid; gap: 14px; }
.lc-tl { position: relative; display: grid; gap: 22px; }
.lc-tl::before { content: ""; position: absolute; left: 17px; top: 18px; bottom: 18px; width: 2px; background: var(--lc-line); }
.lc-tl::after { content: ""; position: absolute; left: 17px; top: 18px; width: 2px; height: calc(100% - 36px); background: var(--lc-primary); transform-origin: top; animation: lcTl 4.5s ease-in-out infinite; }
@keyframes lcTl { 0% { transform: scaleY(0); } 70%, 100% { transform: scaleY(1); opacity: .0; } 65% { opacity: 1; } }
.lc-tl__i { position: relative; display: flex; gap: 14px; }
.lc-tl__dot { position: relative; z-index: 1; flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #fff; border: 1px solid var(--lc-line); color: var(--lc-primary); animation: lcTlDot 4.5s infinite; animation-delay: calc(var(--i) * 1.4s); }
@keyframes lcTlDot { 0%, 100% { background: #fff; color: var(--lc-primary); } 6%, 26% { background: var(--lc-primary); color: #fff; box-shadow: 0 0 0 6px rgba(61, 92, 255, .14); } }
.lc-tl__t { font-weight: 500; color: var(--lc-ink); font-size: 15.5px; }
.lc-tl__d { font-size: 14px; color: var(--lc-muted); margin-top: 3px; line-height: 1.5; }
@media (prefers-reduced-motion: reduce) { .lc-chan *, .lc-tl::after, .lc-tl__dot { animation: none !important; } }
.lc-chan__t strong.break-all { font-size: 14.5px; }

/* ==========================================================================
   Tecnologia imobiliária — componentes do reposicionamento (v10)
   ========================================================================== */

/* letra de categoria (A–G) */
.lc-letter { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 9px; background: var(--lc-ink); color: #fff; font-size: 13px; font-weight: 600; letter-spacing: .02em; flex-shrink: 0; font-feature-settings: "tnum"; }
.lc-letter--xs { width: 20px; height: 20px; border-radius: 6px; font-size: 11px; }
.lc-letter--lg { width: 44px; height: 44px; border-radius: 13px; font-size: 17px; background: linear-gradient(140deg, #3d5cff, #0b0d12 85%); }
.lc-mega__tab[aria-selected="true"] .lc-letter { background: var(--lc-primary); }

/* ---------- cabeçalho inteligente ---------- */
.header-scroll[data-smart-header] { transition: translate .45s var(--lc-ease), opacity .3s, background .3s; }
.header-scroll.lc-hdr-hide { --tw-translate-y: calc(-100% - 32px); }

/* ---------- mega menu de segmentos ---------- */
.lc-mega__seg { display: grid; grid-template-columns: 272px minmax(0, 1fr); gap: 12px; }
.lc-mega__segs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; background: rgba(255, 255, 255, .7); border-radius: 18px; padding: 10px; }
.lc-segcard { display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 12px; border-radius: 14px; border: 1px solid transparent; transition: background .25s, border-color .25s, transform .3s var(--lc-ease); }
.lc-segcard:hover, .lc-segcard:focus-visible { background: #fff; border-color: var(--lc-line); transform: translateY(-2px); }
.lc-segcard:hover .lc-ico { background: var(--lc-primary); color: #fff; border-color: var(--lc-primary); }
.lc-segcard__t strong { display: block; font-size: 14.5px; font-weight: 500; color: var(--lc-ink); }
.lc-segcard__t small { display: block; margin-top: 2px; font-size: 12.5px; line-height: 1.4; color: var(--lc-muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.lc-segcard__s { margin-top: auto; display: grid; gap: 3px; padding-top: 8px; border-top: 1px dashed var(--lc-line); }
.lc-segcard__s li { font-size: 11.5px; color: var(--lc-faint); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lc-segcard__s li::before { content: "→ "; color: var(--lc-primary); }
.lc-mega.active .lc-mega__segs li { animation: lcMIn .45s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i) * 35ms); }
.lc-mfeat--eco .lc-minivis { height: 116px; }

/* ---------- novas mini ilustrações ---------- */
.lc-mini--grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 4px; align-content: center; }
.lc-mini--grid i { display: block; aspect-ratio: 1.6; border-radius: 3px; background: rgba(111, 220, 154, .55); animation: lcCell 4.8s ease-in-out infinite; animation-delay: calc(var(--d) * .32s); }
.lc-mini--grid i.s { background: rgba(255, 255, 255, .18); animation: none; }
.lc-mini--grid i.r { background: #f5b942; }
@keyframes lcCell { 0%, 70%, 100% { background: rgba(111, 220, 154, .55); } 78%, 92% { background: #f5b942; } }
.lc-mini--pins { background: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px) 0 0 / 14px 14px, linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px) 0 0 / 14px 14px, rgba(255, 255, 255, .04); }
.lc-mini--pins b { position: absolute; left: 8%; right: 8%; top: 48%; height: 2px; background: rgba(142, 162, 255, .35); transform: rotate(-8deg); border-radius: 2px; }
.lc-mini--pins i { position: absolute; left: var(--x); top: var(--y); width: 12px; height: 12px; border-radius: 50% 50% 50% 0; background: #8ea2ff; transform: rotate(-45deg); animation: lcPin 3.2s cubic-bezier(.2, .8, .2, 1) infinite; }
.lc-mini--pins i:nth-child(2) { animation-delay: .4s; background: #fff; } .lc-mini--pins i:nth-child(3) { animation-delay: .8s; }
@keyframes lcPin { 0% { transform: translateY(-14px) rotate(-45deg); opacity: 0; } 18%, 80% { transform: translateY(0) rotate(-45deg); opacity: 1; } 100% { opacity: 0; } }
.lc-mini--phone { display: flex; align-items: center; justify-content: center; }
.lc-mini--phone span { width: 40px; height: 62px; border-radius: 9px; border: 2px solid rgba(255, 255, 255, .45); padding: 6px 5px; display: grid; gap: 4px; align-content: start; }
.lc-mini--phone i { display: block; height: 8px; border-radius: 3px; background: rgba(142, 162, 255, .6); animation: lcBub 3s ease-in-out infinite both; }
.lc-mini--phone i:nth-child(2) { animation-delay: .4s; width: 70%; } .lc-mini--phone i:nth-child(3) { animation-delay: .8s; background: #6fdc9a; }
.lc-mini--orbit span { position: absolute; left: 50%; top: 50%; width: 30px; height: 30px; margin: -15px 0 0 -15px; border-radius: 50%; background: radial-gradient(circle, #8ea2ff, #3d5cff); box-shadow: 0 0 22px rgba(61, 92, 255, .8); }
.lc-mini--orbit i { position: absolute; left: 50%; top: 50%; width: 8px; height: 8px; margin: -4px 0 0 -4px; border-radius: 50%; background: #fff; transform: rotate(var(--a)) translateX(46px); animation: lcOrb 14s linear infinite; }
.lc-mini--orbit::before { content: ""; position: absolute; left: 50%; top: 50%; width: 92px; height: 92px; margin: -46px 0 0 -46px; border-radius: 50%; border: 1px dashed rgba(255, 255, 255, .22); }
@keyframes lcOrb { to { transform: rotate(calc(var(--a) + 360deg)) translateX(46px); } }

/* ---------- menu mobile com abas ---------- */
.lc-mtabs { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); padding: 4px; margin-bottom: 16px; border-radius: 14px; background: var(--lc-soft); border: 1px solid var(--lc-line); }
.lc-mtabs button { position: relative; z-index: 1; padding: 10px 6px; font-size: 14px; font-weight: 500; color: var(--lc-muted); background: none; border: 0; border-radius: 10px; cursor: pointer; transition: color .25s; }
.lc-mtabs button[aria-selected="true"] { color: var(--lc-ink); }
.lc-mtabs > i { position: absolute; top: 4px; bottom: 4px; left: 4px; width: calc((100% - 8px) / 3); border-radius: 10px; background: #fff; box-shadow: 0 4px 14px -6px rgba(11, 13, 18, .25); transition: transform .35s var(--lc-ease); }
.lc-mtabs[data-at="1"] > i { transform: translateX(100%); } .lc-mtabs[data-at="2"] > i { transform: translateX(200%); }
.lc-msegs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lc-mseg { display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 14px; border-radius: 16px; background: #fff; border: 1px solid var(--lc-line); }
.lc-mseg strong { font-size: 14.5px; font-weight: 500; color: var(--lc-ink); }
.lc-mseg small { font-size: 12px; line-height: 1.4; color: var(--lc-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.lc-mseg:active { transform: scale(.98); }
.lc-mcard__head .lc-letter--lg { width: 40px; height: 40px; }

/* ---------- rodapé ---------- */
.lc-fbrand { margin-top: 14px; font-size: 12.5px; letter-spacing: .02em; color: var(--lc-faint); }

/* ---------- legenda do modelo de entrega ---------- */
.lc-model { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-radius: var(--lc-r-lg); border: 1px solid var(--lc-line); background: var(--lc-surface); overflow: hidden; }
.lc-model__i { display: flex; gap: 14px; padding: 22px; }
.lc-model__i + .lc-model__i { border-left: 1px solid var(--lc-line); }
.lc-model__t { font-weight: 500; color: var(--lc-ink); margin-bottom: 4px; }
@media (max-width: 1023px) { .lc-model { grid-template-columns: minmax(0, 1fr); } .lc-model__i + .lc-model__i { border-left: 0; border-top: 1px solid var(--lc-line); } }
.lc-modelnote { display: flex; gap: 10px; align-items: flex-start; margin-top: 20px; padding: 14px 16px; border-radius: 14px; background: var(--lc-soft); border: 1px dashed var(--lc-line-2); font-size: 14px; color: var(--lc-muted); }
.lc-modelnote .lc-i { color: var(--lc-primary); margin-top: 2px; flex-shrink: 0; }

/* ---------- explorador do catálogo (menu de soluções) ---------- */
.lc-explorer { display: grid; grid-template-columns: minmax(0, 1fr); gap: 40px; }
@media (min-width: 1024px) { .lc-explorer { grid-template-columns: 240px minmax(0, 1fr); gap: 48px; } }
.lc-rail { display: none; }
@media (min-width: 1024px) { .lc-rail { display: block; position: sticky; top: 120px; align-self: start; } }
.lc-rail ol { margin-top: 12px; display: grid; gap: 2px; }
.lc-rail a { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 12px; font-size: 14px; color: var(--lc-muted); transition: background .2s, color .2s; }
.lc-rail a small { margin-left: auto; font-size: 12px; color: var(--lc-faint); }
.lc-rail a:hover, .lc-rail a.is-current { background: #fff; color: var(--lc-ink); box-shadow: 0 6px 18px -12px rgba(11, 13, 18, .35); }
.lc-rail a.is-current .lc-letter { background: var(--lc-primary); }
.lc-rail__alt { margin-top: 18px; border-top: 1px solid var(--lc-line); padding-top: 14px !important; color: var(--lc-primary) !important; }
.lc-explorer__main .lc-group:first-of-type { margin-top: 8px; }
.lc-filter .lc-letter--xs { margin-right: 6px; }

/* ---------- submenu contextual (categoria / serviço) ---------- */
.lc-subnav { position: sticky; top: 92px; z-index: 30; margin-top: 8px; }
.lc-subnav__in { display: flex; align-items: center; gap: 10px; padding: 6px; border-radius: 999px; background: rgba(255, 255, 255, .82); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid rgba(227, 231, 237, .9); box-shadow: 0 10px 30px -22px rgba(11, 13, 18, .4); }
.lc-subnav__home { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px 8px 8px; border-radius: 999px; background: var(--lc-ink); color: #fff; font-size: 13.5px; font-weight: 500; white-space: nowrap; flex-shrink: 0; }
.lc-subnav__home .lc-letter { background: var(--lc-primary); }
.lc-subnav__scroll { display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, #000 92%, transparent); mask-image: linear-gradient(90deg, #000 92%, transparent); }
.lc-subnav__scroll::-webkit-scrollbar { display: none; }
.lc-subnav__scroll a { padding: 8px 12px; border-radius: 999px; font-size: 13.5px; color: var(--lc-muted); white-space: nowrap; transition: background .2s, color .2s; }
.lc-subnav__scroll a:hover { background: var(--lc-primary-50); color: var(--lc-primary); }
.lc-subnav__scroll a[aria-current="page"] { background: var(--lc-primary-50); color: var(--lc-primary); font-weight: 500; }
@media (max-width: 1279px) { .lc-subnav { top: 84px; } }
@media (max-width: 767px) { .lc-subnav { top: 76px; } .lc-subnav__home span:not(.lc-letter) { display: none; } .lc-subnav__home { padding: 6px; } }
.lc-toc__sib { margin-top: 10px; display: grid; gap: 1px; }
.lc-toc__sib a { padding: 6px 10px !important; border-left: 0 !important; margin: 0 !important; border-radius: 8px; font-size: 13px !important; }
.lc-toc__sib a[aria-current="page"] { background: var(--lc-primary-50); color: var(--lc-primary) !important; font-weight: 500; }

/* ---------- bento de soluções da categoria ---------- */
.lc-bento { display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.lc-bento__hero { grid-column: span 2; background: radial-gradient(120% 120% at 100% 0%, rgba(61, 92, 255, .12), transparent 60%), var(--lc-surface); }
.lc-bento__hero .lc-card__title { font-size: clamp(20px, 2vw, 26px); }
@media (max-width: 640px) { .lc-bento__hero { grid-column: auto; } }
.lc-aud { display: flex; gap: 16px; align-items: flex-start; }

/* ---------- ecossistema (hub de segmentos) ---------- */
.lc-eco { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.lc-eco__core { grid-column: 1 / -1; grid-row: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-height: 120px; border-radius: var(--lc-r-lg); background: radial-gradient(80% 100% at 50% 0%, rgba(61, 92, 255, .55), transparent 70%), var(--lc-ink); color: #fff; text-align: center; }
.lc-eco__core span { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: rgba(255, 255, 255, .6); }
.lc-eco__core b { font-size: 20px; font-weight: 500; }
.lc-eco__n { display: flex; flex-direction: column; gap: 10px; padding: 20px; border-radius: var(--lc-r); background: var(--lc-surface); border: 1px solid var(--lc-line); transition: transform .35s var(--lc-ease), box-shadow .35s, border-color .35s; }
.lc-eco__n:hover { transform: translateY(-3px); border-color: rgba(61, 92, 255, .35); box-shadow: var(--lc-shadow-lg); }
.lc-eco__n strong { font-size: 17px; font-weight: 500; color: var(--lc-ink); }
.lc-eco__n small { font-size: 14px; line-height: 1.45; color: var(--lc-muted); }
@media (max-width: 1023px) { .lc-eco { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .lc-eco__core { grid-column: 1 / -1; grid-row: auto; min-height: 110px; order: -1; } }
@media (max-width: 479px) { .lc-eco { grid-template-columns: minmax(0, 1fr); } }

/* ---------- jornada do segmento ---------- */
.lc-jr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 32px; counter-reset: jr; }
.lc-jr__i { display: flex; gap: 14px; position: relative; }
.lc-jr__n { flex-shrink: 0; width: 38px; height: 38px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 600; color: var(--lc-primary); background: var(--lc-primary-50); }
@media (max-width: 1023px) { .lc-jr { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
@media (max-width: 640px) { .lc-jr { grid-template-columns: minmax(0, 1fr); } }

/* ---------- página jornada (/solucoes/) ---------- */
.lc-jnav { position: sticky; top: 92px; z-index: 30; }
.lc-jnav__in { display: flex; gap: 4px; padding: 6px; overflow-x: auto; scrollbar-width: none; border-radius: 999px; background: rgba(255, 255, 255, .85); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid var(--lc-line); box-shadow: 0 10px 30px -22px rgba(11, 13, 18, .4); }
.lc-jnav__in::-webkit-scrollbar { display: none; }
.lc-jnav__i { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; font-size: 14px; color: var(--lc-muted); white-space: nowrap; transition: background .2s, color .2s; }
.lc-jnav__i span { font-size: 11.5px; font-weight: 600; color: var(--lc-faint); }
.lc-jnav__i:hover, .lc-jnav__i.is-current { background: var(--lc-ink); color: #fff; }
.lc-jnav__i:hover span, .lc-jnav__i.is-current span { color: #8ea2ff; }
@media (max-width: 1279px) { .lc-jnav { top: 84px; } } @media (max-width: 767px) { .lc-jnav { top: 76px; } }
.lc-stage { position: relative; padding: clamp(22px, 4vw, 44px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); scroll-margin-top: 170px; }
.lc-stage__head { display: flex; align-items: flex-start; gap: 16px; margin-bottom: 28px; }
.lc-stage__n { font-size: clamp(34px, 4vw, 52px); line-height: .9; font-weight: 500; letter-spacing: -.04em; color: transparent; -webkit-text-stroke: 1px var(--lc-line-2); }
@media (max-width: 640px) { .lc-stage__head { flex-wrap: wrap; } }

/* ---------- artigos ---------- */
.lc-artfeat { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(24px, 4vw, 56px); align-items: center; padding: clamp(20px, 3vw, 32px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); transition: box-shadow .35s, transform .35s var(--lc-ease); }
.lc-artfeat:hover { box-shadow: var(--lc-shadow-lg); transform: translateY(-2px); }
.lc-artfeat__vis { border-radius: var(--lc-r); background: radial-gradient(100% 100% at 100% 0%, rgba(61, 92, 255, .5), transparent 60%), var(--lc-ink); padding: clamp(24px, 4vw, 40px); }
.lc-artfeat__vis .lc-minivis { height: 160px; }
@media (max-width: 767px) { .lc-artfeat { grid-template-columns: minmax(0, 1fr); } }

/* ---------- HOME: hero ---------- */
.lc-eyebrow { display: inline-flex; align-items: center; gap: 10px; padding: 7px 14px 7px 10px; border-radius: 999px; background: rgba(255, 255, 255, .8); border: 1px solid var(--lc-line); font-size: 13px; font-weight: 500; color: var(--lc-text); margin-bottom: 22px; box-shadow: 0 6px 20px -14px rgba(11, 13, 18, .3); }
.lc-eyebrow__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--lc-primary); box-shadow: 0 0 0 4px rgba(61, 92, 255, .18); animation: lcDot 2.4s ease-in-out infinite; }
@keyframes lcDot { 50% { box-shadow: 0 0 0 7px rgba(61, 92, 255, 0); } }
.lc-home-hero--imob .lc-display { max-width: 19ch; }
.lc-hero-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; margin-top: 26px; font-size: 13.5px; color: var(--lc-muted); }
.lc-hero-chips li { display: inline-flex; align-items: center; gap: 7px; }
.lc-hero-chips .lc-i { color: var(--lc-primary); }

/* ---------- HOME: ecossistema ---------- */
.lc-ecolist { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
.lc-ecocard { position: relative; display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 14px; background: var(--lc-surface); border: 1px solid var(--lc-line); transition: border-color .25s, box-shadow .25s, transform .3s var(--lc-ease); }
.lc-ecocard strong { display: block; font-size: 14px; font-weight: 500; color: var(--lc-ink); }
.lc-ecocard small { display: none; }
.lc-ecocard__go { margin-left: auto; color: var(--lc-faint); transition: color .25s, transform .25s; }
.lc-ecocard:hover { border-color: rgba(61, 92, 255, .35); transform: translateY(-2px); box-shadow: var(--lc-shadow); }
.lc-ecocard:hover .lc-ecocard__go { color: var(--lc-primary); transform: translate(2px, -2px); }
@media (max-width: 380px) { .lc-ecolist { grid-template-columns: minmax(0, 1fr); } }

/* ---------- HOME: soluções (grade premium) ---------- */
.lc-solgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.lc-solcard { position: relative; display: flex; flex-direction: column; gap: 10px; padding: 18px; border-radius: var(--lc-r); background: var(--lc-surface); border: 1px solid var(--lc-line); transition: transform .4s var(--lc-ease), box-shadow .4s, border-color .4s; overflow: hidden; }
.lc-solcard:hover { transform: translateY(-4px); box-shadow: var(--lc-shadow-lg); border-color: rgba(61, 92, 255, .3); }
.lc-solcard__vis { border-radius: 14px; padding: 12px; background: radial-gradient(120% 100% at 100% 0%, rgba(61, 92, 255, .45), transparent 60%), var(--lc-ink); margin-bottom: 6px; }
.lc-solcard__vis .lc-minivis { height: 86px; }
.lc-solcard__top { display: flex; align-items: center; justify-content: space-between; }
.lc-solcard__ex { display: grid; gap: 4px; margin-top: 2px; }
.lc-solcard__ex li { font-size: 13px; color: var(--lc-faint); padding-left: 14px; position: relative; }
.lc-solcard__ex li::before { content: ""; position: absolute; left: 0; top: .6em; width: 6px; height: 6px; border-radius: 2px; background: var(--lc-primary-50); border: 1px solid rgba(61, 92, 255, .4); }
.lc-solcard .lc-card__more { margin-top: auto; padding-top: 6px; }
.lc-solcard--all { justify-content: center; background: radial-gradient(120% 100% at 100% 0%, rgba(61, 92, 255, .5), transparent 60%), var(--lc-ink); color: #fff; border-color: transparent; }
.lc-solcard--all .lc-card__title { color: #fff; } .lc-solcard--all .lc-card__text { color: rgba(232, 235, 245, .75); } .lc-solcard--all .lc-card__more { color: #fff; }
.lc-solcard__big { font-size: clamp(48px, 6vw, 72px); line-height: 1; font-weight: 500; letter-spacing: -.04em; background: linear-gradient(120deg, #fff, #8ea2ff); -webkit-background-clip: text; background-clip: text; color: transparent; }
@media (max-width: 1279px) { .lc-solgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .lc-solgrid { grid-template-columns: minmax(0, 1fr); } }

/* ---------- HOME: engenharia ---------- */
.lc-caps { display: grid; gap: 18px; }
.lc-cap { display: flex; gap: 16px; align-items: flex-start; }
.lv-stack { position: relative; display: grid; gap: 16px; }
.lv-stack .lv { margin: 0; }
@media (min-width: 1024px) { .lv-stack > :nth-child(2) { width: 82%; margin-left: auto; margin-top: -56px; position: relative; z-index: 2; } .lv-stack--ia > :nth-child(2) { width: 88%; margin-left: 0; margin-top: -40px; } }

/* ---------- HOME: IA ---------- */
.lc-iasec { position: relative; overflow: hidden; }
.lc-iasec__glow { position: absolute; width: 60%; height: 80%; right: -10%; top: -20%; background: radial-gradient(closest-side, rgba(61, 92, 255, .4), transparent); pointer-events: none; }
.lc-checks--dark li { color: rgba(232, 235, 245, .8); }
.lc-checks--dark .lc-i { color: #8ea2ff; }

/* ---------- HOME: jornada em abas ---------- */
.lc-tabbar--8 { justify-content: space-between; overflow-x: auto; scrollbar-width: none; }
.lc-tabbar--8 button { padding: 14px 10px; font-size: 14px; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; }
.lc-tabn { font-size: 11px; font-weight: 600; color: var(--lc-faint); }
.lc-tabbar--8 button[data-state="selected"] .lc-tabn { color: var(--lc-primary); }
.lc-jpanel { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 56px); padding-top: 40px; }
.lc-jpanel h3 { font-size: clamp(26px, 2.6vw, 34px); line-height: 1.1; letter-spacing: -.02em; font-weight: 500; color: var(--lc-ink); }
.lc-jpanel__a > p:not(.lc-kicker) { margin-top: 12px; color: var(--lc-muted); }
.lc-jpanel__b { padding: clamp(20px, 3vw, 32px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); }
.lc-jpanel__tech { color: var(--lc-text); }
.lc-dashes { display: grid; gap: 8px; }
.lc-dashes li { display: flex; gap: 10px; color: var(--lc-muted); font-size: 15px; }
.lc-dashes .lc-i { color: var(--lc-warn); margin-top: 3px; flex-shrink: 0; }
.lc-jsvcs { display: grid; gap: 8px; }
.lc-jsvc { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 12px; background: var(--lc-soft); border: 1px solid var(--lc-line); font-size: 14.5px; color: var(--lc-ink); transition: background .2s, border-color .2s; }
.lc-jsvc > .lc-i:first-child { color: var(--lc-primary); }
.lc-jsvc > .lc-i:last-child { margin-left: auto; color: var(--lc-faint); }
.lc-jsvc:hover { background: var(--lc-primary-50); border-color: rgba(61, 92, 255, .3); }
@media (max-width: 1023px) { .lc-jpanel { grid-template-columns: minmax(0, 1fr); padding-top: 28px; } }

/* ---------- HOME: abordagem ---------- */
.lc-appr { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; position: relative; }
.lc-appr::before { content: ""; position: absolute; left: 4%; right: 4%; top: 70px; height: 1px; background: repeating-linear-gradient(90deg, var(--lc-line-2) 0 6px, transparent 6px 12px); }
.lc-appr__i { position: relative; display: flex; flex-direction: column; gap: 10px; }
.lc-appr__n { font-size: 12px; font-weight: 600; color: var(--lc-faint); }
.lc-appr__i .lc-ico { position: relative; z-index: 1; }
@media (max-width: 1279px) { .lc-appr { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 20px; } .lc-appr::before { display: none; } }
@media (max-width: 640px) { .lc-appr { grid-template-columns: minmax(0, 1fr); } .lc-appr__i { display: grid; grid-template-columns: auto 1fr; column-gap: 14px; } .lc-appr__n { grid-column: 1 / -1; } .lc-appr__i .lc-ico { grid-row: span 2; } }

/* ---------- HOME: CTA ---------- */
.lc-cta--home { padding-block: clamp(56px, 8vw, 104px); }
.lc-cta__grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px); background-size: 48px 48px; -webkit-mask-image: radial-gradient(ellipse 60% 70% at 50% 50%, #000, transparent 75%); mask-image: radial-gradient(ellipse 60% 70% at 50% 50%, #000, transparent 75%); pointer-events: none; }

@media (max-width: 1279px) { .lc-mega__segs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (prefers-reduced-motion: reduce) { .lc-mini--grid i, .lc-mini--pins i, .lc-mini--orbit i, .lc-mini--phone i, .lc-eyebrow__dot { animation: none !important; } .header-scroll.lc-hdr-hide { --tw-translate-y: 0; } }

/* ==========================================================================
   Visuais imobiliários (lv-*)
   ========================================================================== */
/* miniatura de imóvel */
.lv-thumb { position: relative; border-radius: 10px; overflow: hidden; aspect-ratio: 3 / 2; background: #dfe6ff; }
.lv-thumb__svg { width: 100%; height: 100%; display: block; }
.t-sky { fill: #e7ecff; } .t-b1 { fill: #3d5cff; } .t-b2 { fill: #8ea2ff; } .t-b3 { fill: #0b0d12; opacity: .85; } .t-win rect { fill: rgba(255, 255, 255, .7); }
.lv-thumb em { position: absolute; left: 8px; top: 8px; font-style: normal; font-size: 10.5px; font-weight: 600; padding: 3px 7px; border-radius: 99px; background: #fff; color: var(--lc-primary); }
.lv-fav { position: absolute; right: 8px; top: 8px; width: 20px; height: 20px; border-radius: 50%; background: rgba(255, 255, 255, .9); }
.lv-fav::after { content: "♡"; position: absolute; inset: 0; display: grid; place-items: center; font-size: 12px; color: var(--lc-ink); font-style: normal; }
.lv-on .lv-lst:nth-child(1) .lv-fav::after { animation: lvFav 4s ease-in-out infinite 1.4s; }
@keyframes lvFav { 0%, 40% { content: "♡"; color: var(--lc-ink); } 45%, 100% { content: "♥"; color: #e5484d; } }
.lv-thumb--sm { width: 64px; flex-shrink: 0; aspect-ratio: 1; }

/* portal */
.lv-portal { padding: 14px; }
.lv-psearch { display: flex; gap: 8px; }
.lv-pq { flex: 1; min-width: 0; display: flex; align-items: center; padding: 9px 12px; border-radius: 10px; border: 1px solid var(--lc-line); font-size: 12.5px; color: var(--lc-text); white-space: nowrap; overflow: hidden; }
.lv-pq i { width: 1.5px; height: 14px; margin-left: 2px; background: var(--lc-primary); animation: lvCaret 1s steps(1) infinite; }
@keyframes lvCaret { 50% { opacity: 0; } }
.lv-pbtn { padding: 9px 14px; border-radius: 10px; background: var(--lc-primary); color: #fff; font-size: 12.5px; font-weight: 500; }
.lv-fchips { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 12px; }
.lv-fchip { font-size: 11px; padding: 4px 9px; border-radius: 99px; border: 1px solid var(--lc-line); color: var(--lc-muted); }
.lv-fchip.is-on { background: var(--lc-ink); color: #fff; border-color: var(--lc-ink); }
.lv-lsts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.lv-lst { min-width: 0; }
.lv-lst b { display: block; margin-top: 7px; font-size: 13px; color: var(--lc-ink); }
.lv-lst strong { display: block; font-size: 11.5px; font-weight: 500; color: var(--lc-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lv-lst small { display: block; font-size: 10.5px; color: var(--lc-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lv-on .lv-lst { animation: lvUp .6s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.2s + var(--i) * .1s); }
@keyframes lvUp { from { opacity: 0; transform: translateY(10px); } }
@media (max-width: 767px) { .lv-lsts { grid-template-columns: repeat(2, minmax(0, 1fr)); } .lv-lst:nth-child(n+3) { display: none; } }

/* mapa */
.lv-map { position: relative; height: 300px; overflow: hidden; }
.lv-mapbg { position: absolute; inset: 0; width: 100%; height: 100%; }
.m-land { fill: #f1f4fa; } .m-water { fill: #dbe5ff; } .m-park { fill: #d9f1e4; }
.m-road { stroke: #fff; stroke-width: 9; fill: none; } .m-st { stroke: #fff; stroke-width: 4; fill: none; }
.m-draw { fill: rgba(61, 92, 255, .1); stroke: var(--lc-primary); stroke-width: 1.5; stroke-dasharray: 5 4; }
.lv-on .m-draw { animation: lvDash 3s linear infinite; }
.lv-pin { position: absolute; transform: translate(-50%, -100%); padding: 4px 8px; border-radius: 99px; background: #fff; border: 1px solid var(--lc-line); font-size: 10.5px; font-weight: 600; color: var(--lc-ink); white-space: nowrap; box-shadow: 0 6px 16px -8px rgba(11, 13, 18, .35); }
.lv-pin::after { content: ""; position: absolute; left: 50%; bottom: -5px; width: 8px; height: 8px; margin-left: -4px; background: inherit; border: inherit; border-top: 0; border-left: 0; transform: rotate(45deg); }
.lv-pin.is-sel { background: var(--lc-ink); color: #fff; border-color: var(--lc-ink); z-index: 2; }
.lv-on .lv-pin { animation: lvDrop .6s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.2s + var(--i) * .12s); }
.lv-on .lv-pin.is-sel { animation: lvDrop .6s cubic-bezier(.2, .8, .2, 1) both .3s, lvBob 2.4s ease-in-out infinite 1.2s; }
@keyframes lvDrop { from { opacity: 0; transform: translate(-50%, -160%); } }
@keyframes lvBob { 50% { transform: translate(-50%, -112%); } }
.lv-mapcard { position: absolute; left: 12px; bottom: 12px; right: auto; max-width: 300px; display: flex; gap: 10px; align-items: center; padding: 8px; border-radius: 14px; background: #fff; box-shadow: 0 16px 34px -18px rgba(11, 13, 18, .45); }
.lv-mapcard b { display: block; font-size: 13px; } .lv-mapcard small { display: block; font-size: 11px; color: var(--lc-muted); } .lv-mapcard em { display: block; margin-top: 3px; font-style: normal; font-size: 10.5px; color: var(--lc-primary); font-weight: 500; }
.lv-mapctl { position: absolute; right: 12px; top: 12px; display: grid; border-radius: 10px; overflow: hidden; background: #fff; box-shadow: 0 6px 16px -8px rgba(11, 13, 18, .3); }
.lv-mapctl span { width: 26px; height: 26px; display: grid; place-items: center; font-size: 14px; color: var(--lc-ink); } .lv-mapctl span + span { border-top: 1px solid var(--lc-line); }
@media (max-width: 640px) { .lv-map { height: 260px; } .lv-mapcard { right: 12px; max-width: none; } }

/* espelho de vendas */
.lv-esp { display: grid; grid-template-columns: minmax(0, 1fr) 190px; gap: 14px; padding: 14px; }
.lv-tower { display: grid; gap: 3px; }
.lv-fl { display: grid; grid-template-columns: 22px repeat(6, minmax(0, 1fr)); gap: 3px; align-items: center; }
.lv-fl span { font-size: 9.5px; color: var(--lc-faint); text-align: right; padding-right: 3px; }
.lv-u { display: block; height: 18px; border-radius: 4px; font-style: normal; font-size: 8.5px; line-height: 18px; text-align: center; color: rgba(11, 13, 18, .55); overflow: hidden; }
.lv-u--d { background: #d9f1e4; } .lv-u--r { background: #ffe7b3; } .lv-u--v { background: #e3e7ed; color: rgba(11, 13, 18, .35); }
.lv-u--x { background: #d9f1e4; }
.lv-on .lv-u--x { animation: lvUnit 6s ease-in-out infinite 1s; }
@keyframes lvUnit { 0%, 20% { background: #d9f1e4; box-shadow: none; } 26%, 60% { background: #ffcf66; box-shadow: 0 0 0 2px #fff, 0 0 0 4px #f5b942; } 66%, 100% { background: #3d5cff; color: #fff; box-shadow: none; } }
.lv-espside { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.lv-leg { display: grid; gap: 6px; }
.lv-leg span { display: flex; align-items: center; gap: 8px; font-size: 11.5px; color: var(--lc-muted); }
.lv-leg span::before { content: ""; width: 10px; height: 10px; border-radius: 3px; flex-shrink: 0; }
.lv-leg b { margin-left: auto; color: var(--lc-ink); }
.lv-leg .d::before { background: #b8e6cd; } .lv-leg .r::before { background: #ffcf66; } .lv-leg .v::before { background: #cfd5df; }
.lv-leg--row { display: flex; gap: 14px; justify-content: center; padding: 10px; }
.lv-espev { display: grid; gap: 6px; }
.lv-espev p { font-size: 11.5px; padding: 8px 10px; border-radius: 10px; background: var(--lc-soft); border: 1px solid var(--lc-line); color: var(--lc-ink); }
.lv-espev small { display: block; font-size: 10.5px; color: var(--lc-muted); }
.lv-on .lv-espev p { animation: lvUp .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(1.6s + var(--i) * .5s); }
@media (max-width: 640px) { .lv-esp { grid-template-columns: minmax(0, 1fr); } .lv-espev { display: none; } .lv-leg { grid-template-columns: repeat(3, auto); justify-content: space-between; } .lv-leg b { margin-left: 4px; } .lv-u { font-size: 0; } }

/* simulador de investimento */
.lv-invest { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 14px; padding: 14px; }
.lv-sls { display: grid; gap: 14px; align-content: start; }
.lv-sl p { display: flex; justify-content: space-between; gap: 8px; font-size: 11.5px; color: var(--lc-muted); }
.lv-sl b { color: var(--lc-ink); white-space: nowrap; }
.lv-slt { position: relative; height: 6px; margin-top: 8px; border-radius: 6px; background: var(--lc-line); }
.lv-slt i { position: absolute; left: 0; top: 0; bottom: 0; width: var(--v); border-radius: 6px; background: var(--lc-primary); }
.lv-slt em { position: absolute; top: 50%; left: var(--v); width: 16px; height: 16px; margin: -8px 0 0 -8px; border-radius: 50%; background: #fff; border: 2px solid var(--lc-primary); box-shadow: 0 2px 6px rgba(11, 13, 18, .2); }
.lv-on .lv-sl:nth-child(3) .lv-slt i, .lv-on .lv-sl:nth-child(3) .lv-slt em { animation: lvSlide 5s ease-in-out infinite 1s; }
@keyframes lvSlide { 0%, 100% { --x: 0; } 50% { translate: 18px 0; } }
.lv-on .lv-sl:nth-child(3) .lv-slt i { animation-name: lvSlideW; }
@keyframes lvSlideW { 50% { width: calc(var(--v) + 18px); } }
.lv-prem { font-size: 10.5px; color: var(--lc-faint); }
.lv-inv path.b { fill: none; stroke: #b9c6ff; stroke-width: 2; stroke-dasharray: 4 4; }
.lv-invleg { display: flex; flex-wrap: wrap; gap: 4px 14px; margin-top: 8px; }
.lv-invleg span { display: inline-flex; align-items: center; gap: 6px; font-size: 10.5px; color: var(--lc-muted); }
.lv-invleg span::before { content: ""; width: 14px; height: 2px; background: #3d5cff; } .lv-invleg .b::before { background: #b9c6ff; }
@media (max-width: 640px) { .lv-invest { grid-template-columns: minmax(0, 1fr); } }

/* loteamento */
.lv-lotes { position: relative; }
.lv-lotsvg { display: block; width: 100%; height: auto; }
.lt { stroke: #fff; stroke-width: 2; }
.lt--d { fill: #b8e6cd; } .lt--r { fill: #ffcf66; } .lt--v { fill: #cfd5df; } .lt--x { fill: #3d5cff; }
.lv-on .lt--x { animation: lvLot 2.4s ease-in-out infinite; }
@keyframes lvLot { 50% { fill: #8ea2ff; } }
.lv-lotcard { position: absolute; right: 12px; top: 12px; padding: 10px 12px; border-radius: 12px; background: #fff; box-shadow: 0 16px 34px -18px rgba(11, 13, 18, .45); max-width: 210px; }
.lv-lotcard b { display: block; font-size: 12.5px; } .lv-lotcard small { display: block; font-size: 11px; color: var(--lc-muted); } .lv-lotcard em { display: block; margin-top: 4px; font-style: normal; font-size: 10.5px; font-weight: 500; color: var(--lc-ok); }
.lv-on .lv-lotcard { animation: lvUp .6s cubic-bezier(.2, .8, .2, 1) both .8s; }
@media (max-width: 480px) { .lv-lotcard { position: static; max-width: none; margin: 10px 12px 0; } }

/* jornada animada */
.lv-jour { position: relative; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 8px; padding: 28px 18px 22px; }
.lv-jtrack { position: absolute; left: 6%; right: 6%; top: 40px; height: 2px; background: var(--lc-line); border-radius: 2px; }
.lv-jtoken { position: absolute; top: -5px; left: 0; width: 12px; height: 12px; border-radius: 50%; background: var(--lc-primary); box-shadow: 0 0 0 5px rgba(61, 92, 255, .18); }
.lv-on .lv-jtoken { animation: lvTok 8s linear infinite; }
@keyframes lvTok { from { left: 0; } to { left: calc(100% - 12px); } }
.lv-jst { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; padding-top: 26px; }
.lv-jst::before { content: ""; position: absolute; top: 6px; width: 10px; height: 10px; border-radius: 50%; background: #fff; border: 2px solid var(--lc-line-2); }
.lv-on .lv-jst::before { animation: lvStage 8s linear infinite; animation-delay: calc(var(--i) * 1s); }
@keyframes lvStage { 0%, 12% { border-color: var(--lc-primary); background: var(--lc-primary-50); } 13%, 100% { border-color: var(--lc-line-2); background: #fff; } }
.lv-jst span { font-size: 10px; font-weight: 600; color: var(--lc-faint); }
.lv-jst b { font-size: 12px; font-weight: 500; color: var(--lc-ink); }
@media (max-width: 767px) { .lv-jour { grid-template-columns: repeat(4, minmax(0, 1fr)); row-gap: 18px; } .lv-jtrack { display: none; } }

/* ecossistema orbital */
.lv--eco { margin: 0; }
.lv-eco { position: relative; width: 100%; max-width: 580px; aspect-ratio: 1; margin-inline: auto; }
.lv-eco__svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.lv-eco__ring { fill: none; stroke: var(--lc-line-2); stroke-width: .25; stroke-dasharray: 1 1.2; }
.lv-eco__ring--in { stroke: rgba(61, 92, 255, .25); }
.lv-on .lv-eco__ring { animation: lvSpin 60s linear infinite; transform-origin: 50px 50px; }
@keyframes lvSpin { to { transform: rotate(360deg); } }
.lv-eco .lv-ln { stroke-width: .3; stroke-dasharray: 1 1.5; }
.lv-eco .lv-pk { filter: drop-shadow(0 0 1px rgba(61, 92, 255, .8)); }
.lv-eco__n { position: absolute; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px 8px 8px; border-radius: 99px; background: #fff; border: 1px solid var(--lc-line); box-shadow: 0 10px 24px -14px rgba(11, 13, 18, .35); white-space: nowrap; }
.lv-eco__n svg { width: 26px; height: 26px; padding: 5px; border-radius: 50%; background: var(--lc-primary-50); fill: none; stroke: var(--lc-primary); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.lv-eco__n b { font-size: 13px; font-weight: 500; color: var(--lc-ink); }
.lv-on .lv-eco__n { animation: lvPop .6s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i) * .08s); }
@keyframes lvPop { from { opacity: 0; transform: translate(-50%, -50%) scale(.85); } }
.lv-eco__core { position: absolute; left: 50%; top: 50%; width: 38%; aspect-ratio: 1; transform: translate(-50%, -50%); border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 3px; padding: 10px; background: radial-gradient(circle at 50% 30%, #2a3a8f, #0b0d12 70%); color: #fff; box-shadow: 0 0 0 10px rgba(61, 92, 255, .08), 0 30px 60px -20px rgba(23, 37, 120, .6); }
.lv-eco__core small { font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; color: rgba(255, 255, 255, .55); }
.lv-eco__core b { font-size: clamp(13px, 2vw, 18px); font-weight: 500; line-height: 1.15; }
.lv-eco__core em { font-style: normal; font-size: 10.5px; color: #8ea2ff; }
@media (max-width: 640px) { .lv-eco__n { padding: 5px 8px 5px 5px; gap: 5px; } .lv-eco__n svg { width: 20px; height: 20px; padding: 3px; } .lv-eco__n b { font-size: 10.5px; } .lv-eco__core em { display: none; } }

/* hero composto */
.lv--imob { margin: 0; }
.lv-imob { position: relative; padding: 34px 9% 46px; }
.lv-imob__main .lv { margin: 0; }
.lv-imob__main .lv-win { box-shadow: 0 50px 100px -40px rgba(23, 37, 120, .45), 0 2px 6px rgba(11, 13, 18, .05); }
.lv-float { position: absolute; z-index: 2; padding: 12px 14px; border-radius: 16px; background: rgba(255, 255, 255, .92); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, .9); box-shadow: 0 24px 50px -24px rgba(11, 13, 18, .45); }
.lv-on .lv-float { animation: lvFloatIn .8s cubic-bezier(.2, .8, .2, 1) both, lvFloat 6s ease-in-out infinite; }
.lv-float--lead { left: 0; top: 18%; display: flex; gap: 10px; align-items: flex-start; max-width: 250px; animation-delay: .5s, 1.3s !important; }
.lv-fl__ic { color: #22c55e; font-size: 12px; line-height: 1.4; }
.lv-float--lead b, .lv-float--esp b { display: block; font-size: 13px; color: var(--lc-ink); }
.lv-float small { display: block; font-size: 11px; color: var(--lc-muted); }
.lv-float--lead em { display: block; margin-top: 4px; font-style: normal; font-size: 11px; font-weight: 500; color: var(--lc-primary); }
.lv-float--esp { right: 0; top: 6%; width: 200px; animation-delay: .7s, 2s !important; }
.lv-mesp { display: grid; grid-template-columns: repeat(6, 1fr); gap: 3px; margin: 8px 0; }
.lv-mesp i { height: 12px; border-radius: 3px; background: #b8e6cd; } .lv-mesp i.v { background: #cfd5df; } .lv-mesp i.r { background: #ffcf66; }
.lv-on .lv-mesp i:nth-child(10) { animation: lvUnit 6s ease-in-out infinite 2s; }
.lv-float--ia { left: 4%; bottom: 4%; display: flex; gap: 10px; align-items: center; max-width: 280px; animation-delay: .9s, 2.6s !important; }
.lv-fl__bot { flex-shrink: 0; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; font-size: 11px; font-weight: 700; color: #fff; background: linear-gradient(140deg, #3d5cff, #a77bff); }
.lv-float--ia p { font-size: 12.5px; color: var(--lc-ink); }
.lv-float--kpi { right: 3%; bottom: 10%; width: 170px; animation-delay: 1.1s, 3s !important; }
.lv-float--kpi b { display: block; font-size: 24px; font-weight: 500; letter-spacing: -.02em; color: var(--lc-ink); }
.lv-float--kpi svg { width: 100%; height: 24px; } .lv-float--kpi path { fill: none; stroke: #3d5cff; stroke-width: 2; }
@keyframes lvFloatIn { from { opacity: 0; transform: translateY(16px) scale(.97); } }
@keyframes lvFloat { 50% { translate: 0 -6px; } }
@media (max-width: 1023px) { .lv-imob { padding: 26px 4% 40px; } .lv-float--esp, .lv-float--kpi { display: none; } .lv-float--lead { top: auto; bottom: 0; left: 2%; } .lv-float--ia { left: auto; right: 2%; bottom: auto; top: 0; } }
@media (max-width: 640px) { .lv-imob { padding: 0 0 8px; } .lv-float--ia { display: none; } .lv-float--lead { position: relative; left: auto; bottom: auto; margin: -24px auto 0; max-width: 92%; } }
@media (prefers-reduced-motion: reduce) { .lv-float, .lv-eco__n, .lv-pin, .lv-lst, .lv-espev p { animation: none !important; } }
@media (max-width: 479px) { .lc-ecocard__go { display: none; } .lc-ecocard { padding: 10px; } }
.lc-subnav { margin-bottom: 40px; } .lc-subnav + .lc-section { padding-top: 24px; }
/* contraste AA */
.lv-u { color: #2f3540; } .lv-u--v { color: #4f5664; }
.lc-subnav__scroll a[aria-current="page"], .lc-subnav__scroll a:hover, .lc-toc__sib a[aria-current="page"], .lc-jr__n { color: #2238c9 !important; }
/* marcadores de lista (sem ícones repetidos) */
.lc-bul { flex-shrink: 0; width: 7px; height: 7px; margin-top: .62em; border-radius: 2px; background: var(--lc-primary); transform: rotate(45deg); }
.lc-checks--warn .lc-bul, .lc-dashes .lc-bul { background: var(--lc-warn); border-radius: 50%; transform: none; width: 6px; height: 6px; }
.lc-checks--dark .lc-bul, .lct-dark .lc-checks .lc-bul { background: #8ea2ff; }
.lc-dashes li { align-items: flex-start; }
.lc-rail__dot { width: 8px; height: 8px; border-radius: 3px; background: var(--lc-line-2); transform: rotate(45deg); flex-shrink: 0; margin-inline: 4px; }
.lc-rail a.is-current .lc-rail__dot, .lc-rail a:hover .lc-rail__dot { background: var(--lc-primary); }
.lc-hero-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--lc-primary); }
.lc-iarow > span { flex: 1; }
.lv-eco__dot { width: 9px; height: 9px; border-radius: 50%; background: var(--lc-primary); box-shadow: 0 0 0 4px rgba(61, 92, 255, .15); flex-shrink: 0; }
.lv-eco__n { padding: 8px 14px 8px 11px; }
/* menu mobile: respiro e organização */
.lc-nav__top { padding: 16px 16px 12px 20px; }
.lc-nav__scroll { padding: 6px 16px 28px; }
.lc-nav .lc-search { margin-bottom: 16px; }
.lc-mtabs { margin-bottom: 6px; }
.lc-nav__label { margin: 22px 4px 12px; }
.lc-mcards { gap: 12px; }
.lc-mcard__head { padding: 14px; gap: 14px; }
.lc-mcard__txt small { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 4px; }
.lc-mcard__body { padding: 0 14px 14px; }
.lc-mcard__body ul { gap: 4px; padding-top: 10px; }
.lc-mcard__body li a { padding: 12px 10px; line-height: 1.35; }
.lc-mcard__body li a .lc-i { flex-shrink: 0; }
.lc-mcard__all { display: inline-flex; margin: 12px 10px 4px; }
.lc-nav__all { margin-top: 16px; padding: 14px; }
.lc-msegs { gap: 12px; }
.lc-mseg { padding: 16px; gap: 8px; border-radius: 18px; }
.lc-nav__links { gap: 10px; }
.lc-nav__links a { padding: 14px; line-height: 1.3; }
.lc-mfeat--nav { margin: 18px 0 4px; }
.lc-nav__foot { padding: 14px 16px 16px; }
.lc-nav__quick { gap: 10px; margin-top: 12px; }
@media (max-width: 360px) { .lc-msegs, .lc-nav__links { grid-template-columns: minmax(0, 1fr); } }
/* assinatura do rodapé maior */
.lc-footer__sig { opacity: .8; }
.lc-footer__sig:hover { opacity: 1; }
.lc-footer__sig img { width: 200px; height: auto; }
@media (max-width: 767px) { .lc-footer__sig img { width: 180px; } }
/* rótulo de seção sem traços laterais */
.lc-eyebrow2 { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--lc-text); }
.lc-eyebrow2 svg { flex-shrink: 0; }
/* respiro abaixo da busca do menu */
.lc-nav .lc-search { margin-bottom: 20px !important; }
.lc-nav [data-nav-default] { padding-top: 2px; }
/* estrelinhas dos rótulos: brilho contínuo, giro ocasional e giro ao entrar na tela */
.lc-eyebrow2 svg { transform-origin: 50% 50%; animation: lcStarPulse 3.6s ease-in-out infinite, lcStarSpin 11s cubic-bezier(.65, 0, .35, 1) infinite; animation-delay: var(--pd, 0s), var(--sd, 0s); filter: drop-shadow(0 0 0 rgba(61, 92, 255, 0)); will-change: scale, rotate; }
@keyframes lcStarPulse { 0%, 100% { scale: 1; filter: drop-shadow(0 0 0 rgba(61, 92, 255, 0)); } 45% { scale: 1.22; filter: drop-shadow(0 0 5px rgba(61, 92, 255, .55)); } 60% { scale: .94; } }
@keyframes lcStarSpin { 0%, 84% { rotate: 0deg; } 94% { rotate: 200deg; } 100% { rotate: 180deg; } }
.lc-eyebrow2.is-in svg { animation: lcStarIn .9s cubic-bezier(.2, .8, .2, 1) both, lcStarPulse 3.6s ease-in-out .9s infinite, lcStarSpin 11s cubic-bezier(.65, 0, .35, 1) infinite; animation-delay: 0s, calc(.9s + var(--pd, 0s)), var(--sd, 0s); }
@keyframes lcStarIn { from { rotate: -180deg; scale: .2; opacity: 0; } 70% { scale: 1.25; opacity: 1; } to { rotate: 0deg; scale: 1; } }
.lc-eyebrow2:hover svg { animation: lcStarHover .7s cubic-bezier(.2, .8, .2, 1); }
@keyframes lcStarHover { to { rotate: 360deg; scale: 1.15; } }
@media (prefers-reduced-motion: reduce) { .lc-eyebrow2 svg { animation: none !important; } }
/* ---------- contato v4 ---------- */
.lc-chero { position: relative; overflow: hidden; }
.lc-chero__glow { position: absolute; width: 60vw; height: 60vw; right: -20vw; top: -25vw; border-radius: 50%; background: radial-gradient(closest-side, rgba(61, 92, 255, .18), transparent); pointer-events: none; }
.lc-cbtns { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.lc-cbtn { display: inline-flex; align-items: center; gap: 10px; height: 54px; padding: 0 22px; border-radius: 999px; background: #fff; border: 1px solid var(--lc-line); color: var(--lc-ink); font-size: 15.5px; font-weight: 500; transition: transform .3s var(--lc-ease), box-shadow .3s, border-color .3s; }
.lc-cbtn:hover { transform: translateY(-2px); box-shadow: 0 16px 32px -20px rgba(23, 37, 120, .5); border-color: rgba(61, 92, 255, .35); }
.lc-cbtn svg { width: 20px; height: 20px; }
.lc-cbtn--wa { background: #0b0d12; border-color: #0b0d12; color: #fff; }
.lc-cbtn--wa svg { color: #25d366; }
.lc-cfacts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 32px; text-align: left; }
.lc-cfacts li { padding: 14px; border-radius: 16px; background: rgba(255, 255, 255, .7); border: 1px solid var(--lc-line); }
.lc-cfacts b { display: block; font-size: 14.5px; font-weight: 500; color: var(--lc-ink); }
.lc-cfacts span { display: block; margin-top: 3px; font-size: 13px; line-height: 1.4; color: var(--lc-muted); }
@media (max-width: 640px) { .lc-cfacts { grid-template-columns: minmax(0, 1fr); } .lc-cbtns { flex-direction: column; } .lc-cbtn { justify-content: center; } }
.lc-intents { padding: clamp(20px, 3vw, 30px); border-radius: var(--lc-r-lg); background: rgba(255, 255, 255, .86); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); border: 1px solid rgba(255, 255, 255, .95); box-shadow: 0 40px 80px -40px rgba(23, 37, 120, .45); }
.lc-intents__h { margin-top: 6px; font-size: clamp(20px, 2vw, 24px); font-weight: 500; letter-spacing: -.01em; color: var(--lc-ink); }
.lc-intents__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
.lc-intent { display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 16px; border: 1px solid var(--lc-line); background: #fff; text-align: left; cursor: pointer; transition: border-color .25s, box-shadow .25s, transform .3s var(--lc-ease), background .25s; animation: lkIn .6s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.3s + var(--i) * 60ms); }
.lc-intent:last-child { grid-column: 1 / -1; }
.lc-intent strong { display: block; font-size: 14.5px; font-weight: 500; color: var(--lc-ink); }
.lc-intent small { display: block; margin-top: 2px; font-size: 12.5px; line-height: 1.35; color: var(--lc-muted); }
.lc-intent:hover { border-color: rgba(61, 92, 255, .35); transform: translateY(-2px); box-shadow: 0 14px 28px -20px rgba(23, 37, 120, .45); }
.lc-intent[aria-pressed="true"] { border-color: var(--lc-primary); background: var(--lc-primary-50); box-shadow: 0 0 0 3px rgba(61, 92, 255, .14); }
.lc-intent[aria-pressed="true"] .lc-ico { background: var(--lc-primary); color: #fff; border-color: var(--lc-primary); }
.lc-intents__msg { margin-top: 14px; font-size: 13.5px; color: var(--lc-muted); }
@media (max-width: 480px) { .lc-intents__grid { grid-template-columns: minmax(0, 1fr); } }
.lc-cprivacy { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; color: var(--lc-muted); }
.lc-cprivacy .lc-i { color: var(--lc-primary); flex-shrink: 0; margin-top: 2px; }
@media (prefers-reduced-motion: reduce) { .lc-intent { animation: none; } }
.lc-chero .lc-cfacts { margin-top: 28px; } @media (max-width: 640px) { .lc-cfacts { grid-template-columns: minmax(0, 1fr); gap: 8px; } .lc-cfacts li { padding: 12px 14px; } }

/* ==========================================================================
   /link — cards que se expandem com componentes animados
   ========================================================================== */
.lk-sig { width: 260px; height: auto; display: block; }
.lk-bio { max-width: 300px; font-size: 15.5px; color: var(--lc-text); }
.lk-card { flex-wrap: wrap; transition: transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .45s, border-color .3s, background .45s; }
.lk-xp { flex: 0 0 100%; display: grid; grid-template-rows: 0fr; opacity: 0; transition: grid-template-rows .55s cubic-bezier(.2, .8, .2, 1), opacity .35s, margin .45s; margin-top: 0; }
.lk-xp__in { min-height: 0; overflow: hidden; }
.lk-card.is-open, .lk-card:focus-visible { transform: scale(1.03); border-color: rgba(61, 92, 255, .45); box-shadow: 0 30px 60px -28px rgba(23, 37, 120, .6), 0 0 0 4px rgba(61, 92, 255, .08); z-index: 2; }
@media (hover: hover) { .lk-card:hover { transform: scale(1.03); border-color: rgba(61, 92, 255, .45); box-shadow: 0 30px 60px -28px rgba(23, 37, 120, .6), 0 0 0 4px rgba(61, 92, 255, .08); z-index: 2; } .lk-card:hover .lk-xp { grid-template-rows: 1fr; opacity: 1; margin-top: 14px; } }
.lk-card.is-open .lk-xp, .lk-card:focus-visible .lk-xp { grid-template-rows: 1fr; opacity: 1; margin-top: 14px; }
.lk-xp__vis { position: relative; display: block; height: 118px; border-radius: 16px; overflow: hidden; background: radial-gradient(120% 120% at 100% 0%, rgba(61, 92, 255, .55), transparent 55%), #0b0d12; }
.lk-xp__vis::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px); background-size: 18px 18px; }
.lk-xp__vis::after { content: ""; position: absolute; left: 0; right: 0; height: 40%; top: -40%; background: linear-gradient(transparent, rgba(142, 162, 255, .18), transparent); animation: xpScan 2.6s linear infinite; }
@keyframes xpScan { to { top: 100%; } }
.lk-xp__bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; font-size: 13px; color: var(--lc-muted); }
.lk-xp__cta { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 99px; background: var(--lc-primary); color: #fff; font-weight: 500; font-size: 12.5px; }
.xp-chip { position: absolute; right: 10px; bottom: 10px; z-index: 2; padding: 4px 10px; border-radius: 99px; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .18); color: #cfd8ff; font: 500 11px/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
/* tecnologia: código + rede */
.xp-code { position: absolute; left: 14px; top: 16px; width: 46%; display: grid; gap: 9px; z-index: 1; }
.xp-code i { display: block; height: 7px; width: var(--w); border-radius: 4px; background: linear-gradient(90deg, #8ea2ff, #b9a2ff); transform-origin: left; }
.xp-code i:nth-child(2) { background: linear-gradient(90deg, #6fdc9a, #8fe0b0); } .xp-code i:nth-child(4) { background: rgba(255, 255, 255, .3); }
.lk-card.is-open .xp-code i, .lk-card:hover .xp-code i { animation: xpType 1.6s cubic-bezier(.2, .8, .2, 1) both; } .xp-code i:nth-child(2) { animation-delay: .15s !important; } .xp-code i:nth-child(3) { animation-delay: .3s !important; } .xp-code i:nth-child(4) { animation-delay: .45s !important; }
@keyframes xpType { from { transform: scaleX(0); } }
.xp-nodes { position: absolute; right: 16px; top: 14px; width: 40%; height: 70px; z-index: 1; }
.xp-nodes b { position: absolute; width: 12px; height: 12px; border-radius: 50%; background: #fff; box-shadow: 0 0 12px #8ea2ff; animation: xpPulse 1.8s ease-in-out infinite; }
.xp-nodes b:nth-child(1) { left: 0; top: 40px; } .xp-nodes b:nth-child(2) { left: 45%; top: 4px; animation-delay: .3s; background: #3d5cff; } .xp-nodes b:nth-child(3) { right: 0; top: 46px; animation-delay: .6s; }
.xp-nodes em { position: absolute; height: 2px; background: linear-gradient(90deg, transparent, #8ea2ff, transparent); background-size: 200% 100%; animation: xpFlow 1.4s linear infinite; }
.xp-nodes em:nth-of-type(1) { left: 8px; top: 30px; width: 46%; transform: rotate(-30deg); transform-origin: left; } .xp-nodes em:nth-of-type(2) { left: 50%; top: 14px; width: 46%; transform: rotate(38deg); transform-origin: left; }
@keyframes xpPulse { 50% { transform: scale(1.35); } }
@keyframes xpFlow { from { background-position: 200% 0; } to { background-position: -200% 0; } }
/* investimento: gráfico */
.xp-chart { position: absolute; left: 0; right: 0; bottom: 0; width: 100%; height: 76px; z-index: 1; }
.xp-chart .a { fill: none; stroke: #8ea2ff; stroke-width: 2.5; stroke-dasharray: 300; }
.xp-chart .b { fill: rgba(61, 92, 255, .25); }
.lk-card.is-open .xp-chart .a, .lk-card:hover .xp-chart .a { animation: xpDraw 1.4s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes xpDraw { from { stroke-dashoffset: 300; } to { stroke-dashoffset: 0; } }
.xp-bars { position: absolute; left: 14px; top: 14px; height: 46px; display: flex; align-items: flex-end; gap: 5px; z-index: 1; }
.xp-bars i { width: 9px; height: var(--h); border-radius: 3px 3px 1px 1px; background: rgba(255, 255, 255, .35); transform-origin: bottom; }
.lk-card.is-open .xp-bars i, .lk-card:hover .xp-bars i { animation: xpGrow .8s cubic-bezier(.2, .8, .2, 1) both; }
.xp-bars i:nth-child(6) { background: #6fdc9a; }
@keyframes xpGrow { from { transform: scaleY(0); } }
/* compra: mapa com pins e vitrine */
.xp-map { position: absolute; left: 0; top: 0; bottom: 0; width: 55%; z-index: 1; }
.xp-map b { position: absolute; left: 8%; right: 0; top: 52%; height: 2px; background: rgba(142, 162, 255, .4); transform: rotate(-10deg); }
.xp-map i { position: absolute; left: var(--x); top: var(--y); width: 16px; height: 16px; border-radius: 50% 50% 50% 0; background: #8ea2ff; transform: rotate(-45deg); box-shadow: 0 0 14px rgba(142, 162, 255, .8); }
.xp-map i:nth-child(2) { background: #fff; }
.lk-card.is-open .xp-map i, .lk-card:hover .xp-map i { animation: xpPin .7s cubic-bezier(.2, .8, .2, 1) both; } .xp-map i:nth-child(2) { animation-delay: .15s !important; } .xp-map i:nth-child(3) { animation-delay: .3s !important; }
@keyframes xpPin { from { transform: translateY(-22px) rotate(-45deg); opacity: 0; } }
.xp-tiles { position: absolute; right: 12px; top: 14px; display: grid; gap: 6px; width: 38%; z-index: 1; }
.xp-tiles i { display: block; height: 18px; border-radius: 6px; background: linear-gradient(90deg, rgba(255, 255, 255, .22), rgba(255, 255, 255, .06)); }
.lk-card.is-open .xp-tiles i, .lk-card:hover .xp-tiles i { animation: xpSlide .6s cubic-bezier(.2, .8, .2, 1) both; } .xp-tiles i:nth-child(2) { animation-delay: .12s !important; } .xp-tiles i:nth-child(3) { animation-delay: .24s !important; }
@keyframes xpSlide { from { transform: translateX(30px); opacity: 0; } }
/* aluguel: etapas e progresso */
.xp-steps { position: absolute; left: 12px; right: 12px; top: 16px; display: flex; justify-content: space-between; z-index: 1; }
.xp-steps i { display: flex; flex-direction: column; align-items: center; gap: 4px; font: 500 11px/1.3 ui-monospace, SFMono-Regular, Menlo, monospace; color: #cfd8ff; font-style: normal; }
.xp-steps b { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .25); color: #fff; font-size: 11px; }
.lk-card.is-open .xp-steps b, .lk-card:hover .xp-steps b { animation: xpStep 2.4s ease-in-out infinite; } .xp-steps i:nth-child(2) b { animation-delay: .5s !important; } .xp-steps i:nth-child(3) b { animation-delay: 1s !important; }
@keyframes xpStep { 20%, 60% { background: #3d5cff; border-color: #8ea2ff; box-shadow: 0 0 14px rgba(142, 162, 255, .8); } }
.xp-progress { position: absolute; left: 14px; right: 14px; bottom: 46px; height: 4px; border-radius: 4px; background: rgba(255, 255, 255, .12); overflow: hidden; z-index: 1; }
.xp-progress em { display: block; height: 100%; width: 100%; background: linear-gradient(90deg, #3d5cff, #6fdc9a); transform-origin: left; }
.lk-card.is-open .xp-progress em, .lk-card:hover .xp-progress em { animation: xpFill 2.4s cubic-bezier(.65, 0, .35, 1) infinite; }
@keyframes xpFill { from { transform: scaleX(0); } 80%, to { transform: scaleX(1); } }
@media (prefers-reduced-motion: reduce) { .lk-xp, .lk-xp * , .lk-xp__vis::after { animation: none !important; transition: none !important; } }
.lk-card { row-gap: 0; }

/* /link — componentes v2: claros, limpos e ligados a cada categoria */
.lk-xp__vis { height: auto; min-height: 128px; padding: 14px; background: linear-gradient(180deg, #f8faff, #eef2ff); border: 1px solid #e3e8f8; box-shadow: inset 0 1px 0 #fff; }
.lk-xp__vis::before, .lk-xp__vis::after { display: none; }
/* tecnologia: hub de sistemas */
.x2-hub { position: relative; display: block; height: 104px; }
.x2-lines { position: absolute; inset: 0; width: 100%; height: 100%; }
.x2-lines path { fill: none; stroke: #c9d3ff; stroke-width: 1.6; stroke-dasharray: 3 4; }
.x2-lines circle { fill: #3d5cff; }
.x2-hub i, .x2-hub b { position: absolute; transform: translate(-50%, -50%); padding: 6px 11px; border-radius: 99px; background: #fff; border: 1px solid #e3e8f8; box-shadow: 0 6px 16px -10px rgba(23, 37, 120, .45); font-style: normal; font-size: 12px; font-weight: 500; color: var(--lc-ink); white-space: nowrap; }
.x2-hub .n1 { left: 20%; top: 25%; } .x2-hub .n2 { left: 20%; top: 75%; } .x2-hub .n3 { left: 80%; top: 25%; } .x2-hub .n4 { left: 80%; top: 75%; }
.x2-hub b { left: 50%; top: 50%; padding: 9px 14px; background: var(--lc-ink); color: #fff; border-color: var(--lc-ink); box-shadow: 0 0 0 6px rgba(61, 92, 255, .12), 0 12px 24px -12px rgba(11, 13, 18, .6); }
.lk-card.is-open .x2-hub b, .lk-card:hover .x2-hub b { animation: x2Pulse 2.4s ease-in-out infinite; }
@keyframes x2Pulse { 50% { box-shadow: 0 0 0 11px rgba(61, 92, 255, .06), 0 12px 24px -12px rgba(11, 13, 18, .6); } }
.lk-card.is-open .x2-hub i, .lk-card:hover .x2-hub i { animation: x2In .5s cubic-bezier(.2, .8, .2, 1) both; }
.x2-hub .n2 { animation-delay: .08s !important; } .x2-hub .n3 { animation-delay: .16s !important; } .x2-hub .n4 { animation-delay: .24s !important; }
@keyframes x2In { from { opacity: 0; transform: translate(-50%, -30%) scale(.9); } }
/* investimento: gráfico limpo */
.x2-inv { display: block; }
.x2-inv__h { display: flex; justify-content: space-between; align-items: center; }
.x2-inv__h small { font-size: 12px; color: var(--lc-muted); } .x2-inv__h em { font-style: normal; font-size: 11px; padding: 3px 8px; border-radius: 99px; background: #fff; border: 1px solid #e3e8f8; color: var(--lc-text); }
.x2-chart { display: block; width: 100%; height: 70px; margin-top: 8px; overflow: visible; }
.x2-chart .ar { fill: url(#x2g); } .x2-chart .ln { fill: none; stroke: #3d5cff; stroke-width: 2.4; stroke-linecap: round; stroke-dasharray: 320; }
.x2-chart .ln2 { fill: none; stroke: #b9c4f5; stroke-width: 1.8; stroke-dasharray: 4 5; }
.x2-chart .dt { fill: #fff; stroke: #3d5cff; stroke-width: 2.4; }
.lk-card.is-open .x2-chart .ln, .lk-card:hover .x2-chart .ln { animation: xpDraw 1.4s cubic-bezier(.2, .8, .2, 1) both; }
.x2-inv__lg { display: flex; gap: 14px; margin-top: 8px; }
.x2-inv__lg i { display: inline-flex; align-items: center; gap: 6px; font-style: normal; font-size: 11px; color: var(--lc-muted); }
.x2-inv__lg i::before { content: ""; width: 14px; height: 2px; border-radius: 2px; background: #3d5cff; } .x2-inv__lg i + i::before { background: #b9c4f5; }
/* compra: card de imóvel */
.x2-buy { display: flex; gap: 12px; align-items: stretch; }
.x2-ph { position: relative; flex: 0 0 42%; border-radius: 12px; overflow: hidden; min-height: 100px; }
.x2-ph svg { width: 100%; height: 100%; display: block; object-fit: cover; }
.lk-card.is-open .x2-ph svg, .lk-card:hover .x2-ph svg { animation: x2Zoom 4s ease-in-out infinite alternate; }
@keyframes x2Zoom { to { transform: scale(1.08); } }
.x2-heart { position: absolute; right: 7px; top: 7px; width: 24px; height: 24px; border-radius: 50%; background: #fff; box-shadow: 0 4px 10px -4px rgba(11, 13, 18, .35); }
.x2-heart::after { content: "♡"; position: absolute; inset: 0; display: grid; place-items: center; font-size: 13px; font-style: normal; color: var(--lc-ink); }
.lk-card.is-open .x2-heart::after, .lk-card:hover .x2-heart::after { animation: x2Heart .5s ease .9s both; }
@keyframes x2Heart { 0% { transform: scale(1); } 50% { transform: scale(1.4); } 100% { content: "♥"; color: #e5484d; transform: scale(1); } }
.x2-dots { position: absolute; left: 50%; bottom: 6px; transform: translateX(-50%); display: flex; gap: 4px; }
.x2-dots i { width: 5px; height: 5px; border-radius: 50%; background: rgba(255, 255, 255, .6); } .x2-dots i:first-child { background: #fff; width: 12px; border-radius: 3px; }
.x2-buy__t { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.x2-buy__t b { font-size: 16px; font-weight: 600; color: var(--lc-ink); } .x2-buy__t small { font-size: 12px; color: var(--lc-muted); }
.x2-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px; } .x2-tags i { font-style: normal; font-size: 10.5px; padding: 3px 7px; border-radius: 99px; background: #fff; border: 1px solid #e3e8f8; color: var(--lc-text); }
.x2-btn { margin-top: auto; align-self: flex-start; padding: 6px 12px; border-radius: 99px; background: var(--lc-ink); color: #fff; font-size: 11.5px; font-weight: 500; }
.lk-card.is-open .x2-btn, .lk-card:hover .x2-btn { animation: x2Btn 2.2s ease-in-out 1s infinite; }
@keyframes x2Btn { 50% { box-shadow: 0 0 0 6px rgba(11, 13, 18, .08); } }
/* aluguel: contrato com assinatura */
.x2-rent { display: flex; gap: 12px; align-items: stretch; }
.x2-doc { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; padding: 10px 12px; border-radius: 12px; background: #fff; border: 1px solid #e3e8f8; }
.x2-doc small { font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--lc-faint); }
.x2-doc i { display: block; height: 5px; width: var(--w); border-radius: 3px; background: #e6eaf5; }
.x2-sign { width: 100%; height: 26px; margin-top: 2px; border-top: 1px dashed #d7dde5; padding-top: 2px; }
.x2-sign path { fill: none; stroke: #2238c9; stroke-width: 2; stroke-linecap: round; stroke-dasharray: 220; stroke-dashoffset: 220; }
.lk-card.is-open .x2-sign path, .lk-card:hover .x2-sign path { animation: x2Sign 1.6s ease .3s forwards; }
@keyframes x2Sign { to { stroke-dashoffset: 0; } }
.x2-rent__s { flex: 0 0 40%; position: relative; display: flex; flex-direction: column; justify-content: center; gap: 2px; padding: 10px; border-radius: 12px; background: #fff; border: 1px solid #e3e8f8; }
.x2-ok { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: #e8f7f1; margin-bottom: 4px; }
.x2-ok svg { width: 16px; height: 16px; fill: none; stroke: #0f7a5b; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 24; stroke-dashoffset: 24; }
.lk-card.is-open .x2-ok svg, .lk-card:hover .x2-ok svg { animation: x2Sign .5s ease 1.8s forwards; }
.x2-rent__s b { font-size: 12.5px; color: var(--lc-ink); } .x2-rent__s small { font-size: 11px; color: var(--lc-muted); }
.x2-key { position: absolute; right: 8px; bottom: 8px; width: 26px; height: 26px; border-radius: 8px; display: grid; place-items: center; background: var(--lc-primary-50); }
.x2-key svg { width: 15px; height: 15px; fill: none; stroke: #2238c9; stroke-width: 2; stroke-linecap: round; }
.lk-card.is-open .x2-key, .lk-card:hover .x2-key { animation: x2Key 1.2s cubic-bezier(.2, .8, .2, 1) 2.1s both; }
@keyframes x2Key { from { transform: translateX(-30px) rotate(-30deg); opacity: 0; } }
@media (max-width: 380px) { .x2-buy, .x2-rent { flex-direction: column; } .x2-ph { min-height: 90px; } .x2-hub i { font-size: 11px; padding: 5px 8px; } }
/* investimento v3: carteira com ativos, barras e total contando */
@property --x3a { syntax: '<integer>'; inherits: false; initial-value: 9; }
@property --x3b { syntax: '<integer>'; inherits: false; initial-value: 8; }
@property --x3c { syntax: '<integer>'; inherits: false; initial-value: 4; }
.x3-inv { display: block; }
.x3-inv__h { display: flex; justify-content: space-between; align-items: center; }
.x3-inv__h small { font-size: 12px; color: var(--lc-muted); }
.x3-inv__h em { font-style: normal; font-size: 11px; padding: 3px 8px; border-radius: 99px; background: #fff; border: 1px solid #e3e8f8; color: var(--lc-text); }
.x3-rows { display: grid; gap: 7px; margin-top: 10px; }
.x3-row { display: grid; grid-template-columns: 10px minmax(0, 1fr) auto; grid-template-rows: auto 5px; column-gap: 8px; row-gap: 4px; align-items: center; padding: 8px 10px; border-radius: 10px; background: #fff; border: 1px solid #e3e8f8; }
.x3-row i { width: 8px; height: 8px; border-radius: 3px; }
.x3-row .d1 { background: #3d5cff; } .x3-row .d2 { background: #8ea2ff; } .x3-row .d3 { background: #22b07d; }
.x3-row span { font-size: 12px; font-weight: 500; color: var(--lc-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.x3-row b { font-size: 10.5px; font-weight: 500; color: var(--lc-muted); }
.x3-row u { grid-column: 1 / -1; display: block; height: 5px; border-radius: 4px; background: #eef1fb; overflow: hidden; text-decoration: none; }
.x3-row s { display: block; height: 100%; width: var(--v); border-radius: 4px; background: linear-gradient(90deg, #3d5cff, #8ea2ff); transform-origin: left; text-decoration: none; }
.x3-row:nth-child(3) s { background: linear-gradient(90deg, #22b07d, #6fdc9a); }
.lk-card.is-open .x3-row, .lk-card:hover .x3-row { animation: x2In2 .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i) * .1s); }
.lk-card.is-open .x3-row s, .lk-card:hover .x3-row s { animation: xpType 1.2s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.25s + var(--i) * .12s); }
@keyframes x2In2 { from { opacity: 0; transform: translateY(8px); } }
.x3-total { display: grid; grid-template-columns: 1fr auto; align-items: end; margin-top: 10px; padding: 10px 12px; border-radius: 12px; background: var(--lc-ink); color: #fff; }
.x3-total small { grid-column: 1 / -1; font-size: 11px; color: rgba(232, 235, 245, .65); }
.x3-total strong { font-size: 18px; font-weight: 500; letter-spacing: -.01em; }
.x3-num { counter-reset: xa var(--x3a) xb var(--x3b) xc var(--x3c); }
.x3-num::after { content: counter(xa) "." counter(xb) counter(xc) "0"; }
.lk-card.is-open .x3-num, .lk-card:hover .x3-num { animation: x3Count 1.6s cubic-bezier(.2, .8, .2, 1) .4s both; }
@keyframes x3Count { from { --x3a: 0; --x3b: 0; --x3c: 0; } to { --x3a: 9; --x3b: 8; --x3c: 4; } }
.x3-total svg { width: 80px; height: 22px; } .x3-total path { fill: none; stroke: #6fdc9a; stroke-width: 2; stroke-linecap: round; stroke-dasharray: 100; }
.lk-card.is-open .x3-total path, .lk-card:hover .x3-total path { animation: xpDraw 1.4s ease .5s both; }

/* ==========================================================================
   HOME hero: cidade conectada, atividade ao vivo e ticker
   ========================================================================== */
.lc-home-hero--imob { overflow: hidden; }
.lc-home-hero__visual { isolation: isolate; }
.lc-city { position: absolute; z-index: -1; left: 50%; width: 100vw; transform: translateX(-50%); top: -120px; height: 300px; pointer-events: none; -webkit-mask-image: linear-gradient(to bottom, transparent, #000 35%, #000 70%, transparent); mask-image: linear-gradient(to bottom, transparent, #000 35%, #000 70%, transparent); }
.lc-city svg { width: 100%; height: 100%; display: block; }
.lc-city__b path { fill: none; stroke: rgba(61, 92, 255, .32); stroke-width: 1.2; stroke-dasharray: 1; stroke-dashoffset: 1; animation: lcCityDraw 1.8s cubic-bezier(.65, 0, .35, 1) forwards; animation-delay: calc(.4s + var(--d)); vector-effect: non-scaling-stroke; }
@keyframes lcCityDraw { to { stroke-dashoffset: 0; } }
.lc-city__w rect { fill: #3d5cff; opacity: 0; animation: lcWin 9s ease-in-out infinite; animation-delay: var(--w); }
@keyframes lcWin { 0%, 100% { opacity: 0; } 12%, 40% { opacity: .45; } 55% { opacity: .08; } }
.lc-city__a path { fill: none; stroke: rgba(61, 92, 255, .35); stroke-width: 1; stroke-dasharray: 3 5; animation: lvDash 3s linear infinite; vector-effect: non-scaling-stroke; }
.lc-city__p circle { fill: #3d5cff; filter: drop-shadow(0 0 4px rgba(61, 92, 255, .9)); }
@media (max-width: 767px) { .lc-city { top: -70px; height: 200px; } }

/* notificações de atividade ao redor do título (telas largas) */

/* ticker em telas menores */

/* iOS: evitar zoom automático ao focar campos (fonte mínima de 16px em telas de toque) */
@media (max-width: 1023px), (pointer: coarse) { input, select, textarea, .lc-search input, .lc-input, .lc-search--lg input { font-size: 16px !important; } }
@media (prefers-reduced-motion: reduce) { .lc-city__b path { animation: none; stroke-dashoffset: 0; } .lc-city__w rect, .lc-city__a path { animation: none !important; } }

/* ---------- artigos com capa ---------- */
.lc-ins--img { padding: 0; overflow: hidden; display: flex; flex-direction: column; }
.lc-ins--img > :not(.lc-ins__img) { margin-inline: clamp(20px, 2.4vw, 28px); }
.lc-ins--img > .lc-card__more { margin-top: auto; padding-top: 14px; margin-bottom: clamp(20px, 2.4vw, 28px); }
.lc-ins__img { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: #0b0d12; margin-bottom: 18px; }
.lc-ins__img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s var(--lc-ease); }
.lc-ins--img:hover .lc-ins__img img { transform: scale(1.04); }
.lc-ins__img .lc-tag { position: absolute; left: 14px; top: 14px; background: rgba(255, 255, 255, .92); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.lc-artfeat__vis--img { padding: 0; overflow: hidden; aspect-ratio: 16 / 9; }
.lc-artfeat__vis--img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lc-artcover { margin: 0 auto clamp(32px, 4vw, 56px); max-width: 1120px; border-radius: var(--lc-r-lg); overflow: hidden; aspect-ratio: 16 / 9; background: #0b0d12; box-shadow: var(--lc-shadow-lg); }
.lc-artcover img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ================= DISPOSITIVOS: notebook + celular com soluções animadas ================= */
.lv--stage, .lv--mphone { margin: 0; }
.dv-stage { position: relative; max-width: 1040px; margin: 0 auto; padding: 0 9% 0 0; }
.dv-laptop { position: relative; width: 100%; }
.dv-lid { position: relative; padding: 2% 2% 2.4%; border-radius: clamp(10px, 1.6vw, 20px) clamp(10px, 1.6vw, 20px) 4px 4px; background: linear-gradient(160deg, #1b1f29, #0b0d12 60%); border: 1px solid #2c3240; box-shadow: 0 50px 90px -50px rgba(23, 37, 120, .55), inset 0 0 0 1px rgba(255, 255, 255, .04); }
.dv-cam { position: absolute; top: .7%; left: 50%; width: 5px; height: 5px; margin-left: -2.5px; border-radius: 50%; background: #2f3646; }
.dv-screen { position: relative; aspect-ratio: 16 / 10; overflow: hidden; border-radius: 4px; background: #fff; }
.dv-base { position: relative; height: clamp(8px, 1.5vw, 16px); width: 110%; margin-left: -5%; border-radius: 2px 2px 18px 18px / 2px 2px 12px 12px; background: linear-gradient(#eef1f5, #c3c9d3 70%, #a9b0bc); box-shadow: 0 18px 30px -16px rgba(11, 13, 18, .45); }
.dv-base i { position: absolute; left: 50%; top: 0; width: 15%; height: 40%; transform: translateX(-50%); border-radius: 0 0 8px 8px; background: #b3bac6; }
.dv-slide, .dv-pslide { position: absolute; inset: 0; display: none; }
.dv-slide.is-on, .dv-pslide.is-on { display: block; animation: dvIn .7s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes dvIn { from { opacity: 0; transform: scale(1.015); } to { opacity: 1; transform: none; } }
.dv-fit { width: 640px; height: calc(100% / var(--s, 1)); transform: scale(var(--s, 1)); transform-origin: 0 0; }
.dv-fit > .lv { margin: 0; height: 100%; }
.dv-fit .lv-win { height: 100%; display: flex; flex-direction: column; border: 0; border-radius: 0; box-shadow: none; }
.dv-fit .lv-win > :not(.lv-bar) { flex: 1 1 auto; min-height: 0; }
.dv-fit .lv-cap, .dv-fit figcaption { display: none; }
/* mantém o layout de desktop dentro da tela do notebook */
@media (max-width: 767px) {
  .dv-fit .lv-kan { grid-template-columns: repeat(4, 1fr); } .dv-fit .lv-mover { display: block; }
  .dv-fit .lv-kpis { grid-template-columns: repeat(4, 1fr); } .dv-fit .lv-charts { grid-template-columns: 1.2fr 1fr; } .dv-fit .lv-kpi b { font-size: 20px; } .dv-fit .lv-dash { padding: 16px; }
  .dv-fit .lv-esp { grid-template-columns: minmax(0, 1fr) 190px; } .dv-fit .lv-espev { display: grid; } .dv-fit .lv-leg { grid-template-columns: none; } .dv-fit .lv-u { font-size: 8.5px; }
  .dv-fit .lv-lsts { grid-template-columns: repeat(4, minmax(0, 1fr)); } .dv-fit .lv-lst:nth-child(n+3) { display: block; }
  .dv-fit .lv-bar span { font-size: 12px; }
}
/* celular */
.dv-phone { position: relative; width: 100%; }
.dv-phone__body { position: relative; aspect-ratio: 9 / 19; padding: 4%; border-radius: 15% / 7.2%; background: linear-gradient(160deg, #262b36, #0b0d12 55%); border: 1px solid #353b49; box-shadow: 0 40px 70px -36px rgba(11, 13, 18, .6), inset 0 0 0 2px rgba(255, 255, 255, .05); }
.dv-phone__island { position: absolute; z-index: 3; top: 3.6%; left: 50%; width: 30%; height: 3.2%; transform: translateX(-50%); border-radius: 99px; background: #000; }
.dv-phone__scr { position: relative; height: 100%; overflow: hidden; border-radius: 12% / 5.6%; background: #f2f5fa; }
.dv-pfit { position: relative; width: 240px; height: calc(100% / var(--s, 1)); transform: scale(var(--s, 1)); transform-origin: 0 0; }
.dv-phone--stage { position: absolute; right: 0; bottom: -5%; width: 23%; z-index: 2; }
.dv-lbls { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 8px; margin-top: clamp(26px, 4vw, 44px); }
.dv-lbl { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px 7px 10px; border-radius: 99px; font-size: 13px; color: var(--lc-muted); border: 1px solid transparent; cursor: pointer; transition: color .3s, background .3s, border-color .3s; user-select: none; }
.dv-lbl i { position: relative; width: 22px; height: 3px; border-radius: 3px; background: var(--lc-line-2, #d7dde5); overflow: hidden; }
.dv-lbl.is-on { color: var(--lc-ink); background: var(--lc-surface, #fff); border-color: var(--lc-line); box-shadow: 0 8px 22px -16px rgba(23, 37, 120, .45); }
.dv-lbl.is-on i::after { content: ""; position: absolute; inset: 0; background: var(--lc-primary); transform-origin: left; animation: dvBar 5.2s linear both; }
@keyframes dvBar { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@media (max-width: 640px) {
  .dv-stage { padding-right: 13%; }
  .dv-phone--stage { width: 33%; bottom: -9%; }
  .dv-lbls { margin-top: 30px; gap: 4px; }
  .dv-lbl { font-size: 12px; padding: 6px 10px 6px 8px; gap: 6px; } .dv-lbl:not(.is-on) { font-size: 0; gap: 0; padding: 6px; }
}

/* ---------- telas (desenhadas em 240 px de largura) ---------- */
.ms { position: absolute; inset: 0; padding: 40px 14px 14px; overflow: hidden; color: var(--lc-ink, #0b0d12); background: #f2f5fa; font-size: 12px; line-height: 1.35; text-align: left; }
.ms *, .ms *::after { box-sizing: border-box; }
.ms-sbar { position: absolute; z-index: 4; top: 13px; left: 24px; right: 22px; display: flex; justify-content: space-between; align-items: center; font-size: 11px; font-weight: 600; color: #0b0d12; }
.ms-sbar span { display: flex; gap: 2px; align-items: flex-end; } .ms-sbar span i { width: 3px; border-radius: 1px; background: #0b0d12; } .ms-sbar span i:nth-child(1) { height: 5px; } .ms-sbar span i:nth-child(2) { height: 7px; } .ms-sbar span i:nth-child(3) { height: 9px; }
.ms-hi { font-size: 17px; font-weight: 600; letter-spacing: -.01em; }
.ms-sub { font-size: 11.5px; color: #5b6472; margin-bottom: 10px; }
.ms-tabs { position: absolute; left: 14px; right: 14px; bottom: 12px; display: flex; justify-content: space-around; padding: 11px; border-radius: 16px; background: #fff; box-shadow: 0 6px 18px -10px rgba(11, 13, 18, .25); }
.ms-tabs i { width: 18px; height: 4px; border-radius: 4px; background: #d7dde5; } .ms-tabs i.on { background: #3d5cff; }
.ms-card { padding: 12px; margin-bottom: 9px; border-radius: 16px; background: #fff; box-shadow: 0 2px 8px rgba(11, 13, 18, .05); }
.ms-card small, .ms-kpis small { display: block; font-size: 10.5px; color: #5b6472; }
.ms-btn { display: inline-block; padding: 9px 12px; border-radius: 12px; background: #3d5cff; color: #fff; font-size: 11.5px; font-weight: 600; text-align: center; }
.ms-btn--sm { padding: 6px 10px; font-size: 10.5px; border-radius: 10px; }
.ms-btn--full { display: block; margin-top: 10px; }
.ms-lbl { margin: 4px 0 6px; font-size: 11px; font-weight: 600; color: #5b6472; text-transform: uppercase; letter-spacing: .06em; }
@keyframes msIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes msPop { 0% { opacity: 0; transform: translate(-50%, -50%) scale(.4); } 70% { transform: translate(-50%, -50%) scale(1.08); } 100% { opacity: 1; transform: translate(-50%, -50%) scale(1); } }
.lv-on .ms-row, .lv-on .ms-asset, .lv-on .ms-ticket, .lv-on .ms-steps li, .lv-on .ms-check li, .lv-on .ms-photos span { animation: msIn .6s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.3s + var(--i) * .22s); }
/* agenda */
.ms-week { display: grid; grid-template-columns: repeat(7, 1fr); gap: 3px; margin-bottom: 10px; }
.ms-week span { padding: 5px 0; border-radius: 10px; text-align: center; font-size: 11.5px; font-weight: 600; }
.ms-week small { display: block; font-size: 9px; font-weight: 500; color: #646c7a; }
.ms-week span.on { background: #3d5cff; color: #fff; } .ms-week span.on small { color: rgba(255, 255, 255, .75); }
.ms-row { display: flex; gap: 9px; align-items: center; padding: 9px; margin-bottom: 7px; border-radius: 14px; background: #fff; box-shadow: 0 2px 6px rgba(11, 13, 18, .05); }
.ms-row b { flex-shrink: 0; padding: 5px 6px; border-radius: 8px; background: #eef1ff; color: #3d5cff; font-size: 10.5px; font-variant-numeric: tabular-nums; }
.ms-row strong, .ms-asset strong, .ms-ticket strong { display: block; font-size: 12px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ms-row small, .ms-ticket small { display: block; font-size: 10.5px; color: #5b6472; }
.ms-row div { min-width: 0; }
.lv-on .ms-row:nth-of-type(1) b { animation: msPulse 2.4s ease-in-out 1.6s infinite; }
@keyframes msPulse { 50% { box-shadow: 0 0 0 5px rgba(61, 92, 255, .16); } }
/* mapa */
.ms--mapa { padding: 0; }
.ms-mapsvg { position: absolute; inset: 0; width: 100%; height: 100%; }
.ms-mapsvg .m-road { fill: none; stroke: #fff; stroke-width: 7; } .ms-mapsvg .m-st { fill: none; stroke: #fff; stroke-width: 3; }
.ms-mapsvg .m-draw { fill: rgba(61, 92, 255, .12); stroke: #3d5cff; stroke-width: 1.6; stroke-dasharray: 4 3; }
.lv-on .ms-mapsvg .m-draw { animation: lvDash 3s linear infinite; }
.ms-search { position: absolute; z-index: 3; top: 36px; left: 12px; right: 12px; display: flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 12px; background: #fff; font-size: 11.5px; font-weight: 500; box-shadow: 0 8px 20px -12px rgba(11, 13, 18, .35); }
.ms-search i { width: 10px; height: 10px; border: 2px solid #3d5cff; border-radius: 50%; }
.ms-pin { position: absolute; z-index: 2; padding: 4px 7px; border-radius: 99px; background: #fff; color: #0b0d12; font-size: 10px; font-weight: 700; white-space: nowrap; box-shadow: 0 6px 14px -6px rgba(11, 13, 18, .4); transform: translate(-50%, -50%); }
.ms-pin.is-sel { background: #0b0d12; color: #fff; z-index: 3; }
.lv-on .ms-pin { animation: msPop .55s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.4s + var(--i) * .25s); }
.ms-sheet { position: absolute; z-index: 3; left: 10px; right: 10px; bottom: 10px; display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 8px 10px; align-items: center; padding: 10px; border-radius: 18px; background: #fff; box-shadow: 0 -10px 30px -16px rgba(11, 13, 18, .35); }
.lv-on .ms-sheet { animation: msIn .7s cubic-bezier(.2, .8, .2, 1) 1.7s both; }
.ms-sheet__img { height: 52px; border-radius: 10px; overflow: hidden; } .ms-sheet__img svg, .ms-photos svg, .ms-msg--card span svg { width: 100%; height: 100%; display: block; }
.ms-sheet b { display: block; font-size: 13.5px; } .ms-sheet small { font-size: 10.5px; color: #5b6472; }
.ms-sheet .ms-btn { grid-column: 1 / -1; }
/* obra */
.ms-obra { display: flex; align-items: center; gap: 8px; }
.ms-ringw { position: relative; width: 88px; flex-shrink: 0; text-align: center; }
.ms-ring { width: 88px; height: 88px; transform: rotate(-90deg); }
.ms-ring circle { fill: none; stroke-width: 9; } .ms-ring .bg { stroke: #eef1ff; } .ms-ring .fg { stroke: #3d5cff; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: 28; }
.lv-on .ms-ring .fg { animation: msRing 1.8s cubic-bezier(.2, .8, .2, 1) .3s both; }
@keyframes msRing { from { stroke-dashoffset: 100; } }
.ms-ringw b { position: absolute; left: 0; right: 0; top: 26px; font-size: 19px; font-weight: 700; letter-spacing: -.02em; }
.ms-ringw small { position: absolute; left: 0; right: 0; top: 50px; font-size: 9.5px; }
.ms-bld { flex: 1; min-width: 0; height: 84px; }
.ms-bld path { fill: none; stroke-linecap: round; } .ms-bld .b { stroke: #0b0d12; stroke-width: 2; } .ms-bld .g { stroke: #c3cbe0; stroke-width: 1.2; } .ms-bld .u { stroke: #3d5cff; stroke-width: 2; stroke-dasharray: 4 4; } .ms-bld .c { stroke: #f5b942; stroke-width: 2.4; } .ms-bld .k { fill: #f5b942; }
.lv-on .ms-bld .k { animation: msCrane 3.2s ease-in-out infinite; } .lv-on .ms-bld .u { animation: lvDash 2s linear infinite; }
@keyframes msCrane { 50% { transform: translateY(26px); } }
.ms-steps { position: relative; margin: 2px 0 10px; padding: 0 2px; }
.ms-steps li { position: relative; display: flex; align-items: center; gap: 9px; padding: 5px 0; font-size: 11.5px; color: #646c7a; }
.ms-steps li i { position: relative; width: 14px; height: 14px; flex-shrink: 0; border-radius: 50%; border: 2px solid #d7dde5; background: #fff; }
.ms-steps li.ok { color: #0b0d12; } .ms-steps li.ok i { border-color: #22b07d; background: #22b07d; }
.ms-steps li.ok i::after { content: ""; position: absolute; left: 3px; top: 0; width: 4px; height: 7px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.ms-steps li.run { color: #3d5cff; font-weight: 600; } .ms-steps li.run i { border-color: #3d5cff; }
.lv-on .ms-steps li.run i { animation: msPulse 1.8s ease-in-out infinite; }
.ms-next { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2px 8px; } .ms-next b { display: block; font-size: 12px; grid-column: 1; } .ms-next .ms-btn { grid-column: 2; grid-row: 1 / span 2; }
/* carteira */
.ms-big { display: block; font-size: 23px; font-weight: 700; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.ms-line { width: 100%; height: 60px; margin: 6px 0 8px; overflow: visible; }
.ms-line .a { fill: none; stroke: #3d5cff; stroke-width: 2.2; stroke-dasharray: 260; stroke-dashoffset: 0; } .ms-line .ar { fill: rgba(61, 92, 255, .1); }
.lv-on .ms-line .a { animation: msDraw 1.8s cubic-bezier(.2, .8, .2, 1) .2s both; }
@keyframes msDraw { from { stroke-dashoffset: 260; } }
.ms-kpis { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 8px; }
.ms-kpis span { padding: 9px 10px; border-radius: 14px; background: #fff; } .ms-kpis b { display: block; font-size: 14px; font-variant-numeric: tabular-nums; }
.ms-asset { display: flex; align-items: center; gap: 8px; padding: 8px 10px; margin-bottom: 6px; border-radius: 12px; background: #fff; }
.ms-asset i, .ms-ticket > i { width: 8px; height: 8px; flex-shrink: 0; border-radius: 50%; }
.ms-asset strong { flex: 1; min-width: 0; font-size: 11.5px; } .ms-asset small { font-size: 10px; color: #5b6472; }
.ms-asset i.ok, .ms-ticket.ok > i { background: #22b07d; } .ms-asset i.warn { background: #f5b942; } .ms-asset i.pri, .ms-ticket.run > i { background: #3d5cff; }
/* captação */
.ms-photos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin-bottom: 10px; }
.ms-photos span { aspect-ratio: 1; border-radius: 10px; overflow: hidden; }
.ms-check li { display: flex; align-items: center; gap: 9px; padding: 8px 10px; margin-bottom: 6px; border-radius: 12px; background: #fff; font-size: 11.5px; font-weight: 500; }
.ms-check li i { position: relative; width: 16px; height: 16px; flex-shrink: 0; border-radius: 5px; border: 2px solid #d7dde5; }
.ms-check li i::after { content: ""; position: absolute; left: 3.5px; top: 0; width: 4px; height: 8px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg) scale(0); }
.lv-on .ms-check li i { animation: msChk .4s ease both; animation-delay: calc(1.1s + var(--i) * .45s); }
.lv-on .ms-check li i::after { animation: msChk2 .4s ease both; animation-delay: calc(1.1s + var(--i) * .45s); }
@keyframes msChk { to { background: #22b07d; border-color: #22b07d; } }
@keyframes msChk2 { to { transform: rotate(45deg) scale(1); } }
.ms-prog { height: 6px; border-radius: 6px; background: #e3e8f0; overflow: hidden; } .ms-prog i { display: block; height: 100%; width: 100%; background: linear-gradient(90deg, #3d5cff, #22b07d); transform-origin: left; }
.lv-on .ms-prog i { animation: dvBar 2.2s cubic-bezier(.4, 0, .2, 1) 1s both; }
/* chat */
.ms--chat { padding-top: 36px; }
.ms-chead { display: flex; align-items: center; gap: 8px; padding-bottom: 9px; margin-bottom: 8px; border-bottom: 1px solid #e3e8f0; }
.ms-chead b { display: block; font-size: 12px; } .ms-chead small { font-size: 10px; color: #0f7a5b; }
.ms-av { width: 30px; height: 30px; flex-shrink: 0; display: grid; place-items: center; border-radius: 50%; background: linear-gradient(135deg, #3d5cff, #8ea2ff); color: #fff; font-size: 10.5px; font-weight: 700; }
.ms-msgs { display: flex; flex-direction: column; gap: 6px; }
.ms-msg { max-width: 84%; padding: 7px 10px; border-radius: 14px; font-size: 11px; line-height: 1.35; }
.ms-msg--in { align-self: flex-start; background: #fff; border-bottom-left-radius: 4px; }
.ms-msg--out { align-self: flex-end; background: #3d5cff; color: #fff; border-bottom-right-radius: 4px; }
.ms-msg--card { padding: 5px 5px 8px; background: #fff; color: #0b0d12; width: 62%; }
.ms-msg--card span { display: block; height: 56px; border-radius: 10px; overflow: hidden; margin-bottom: 5px; } .ms-msg--card b { display: block; padding: 0 4px; font-size: 12px; } .ms-msg--card small { padding: 0 4px; font-size: 10px; color: #5b6472; }
.lv-on .ms-msg { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.4s + var(--i) * .9s); }
.ms-input { position: absolute; left: 12px; right: 12px; bottom: 12px; display: flex; align-items: center; justify-content: space-between; padding: 9px 9px 9px 14px; border-radius: 99px; background: #fff; font-size: 11px; color: #646c7a; }
.ms-input i { width: 22px; height: 22px; border-radius: 50%; background: #3d5cff; }
/* locação */
.ms-bill b { display: block; margin: 2px 0 6px; font-size: 22px; letter-spacing: -.02em; }
.ms-bill p { display: flex; justify-content: space-between; margin-bottom: 9px; font-size: 10.5px; color: #5b6472; } .ms-bill em { font-style: normal; color: #3d5cff; font-weight: 600; }
.ms-bill .ms-btn { display: block; }
.ms-ticket { display: flex; align-items: center; gap: 9px; padding: 9px 10px; margin-bottom: 6px; border-radius: 12px; background: #fff; }
.lv-on .ms-ticket.run > i { animation: msPulse 1.8s ease-in-out infinite; }
.ms-renew b { display: block; font-size: 11.5px; margin-top: 2px; }
@media (prefers-reduced-motion: reduce) { .dv-stage *, .lv--mphone *, .dv-lbl i::after { animation: none !important; } }

/* ---------- HOME: hero com dispositivos ---------- */
.lc-home-hero--dv { overflow: hidden; padding-bottom: clamp(56px, 7vw, 96px); }
.lc-home-hero--dv .lc-home-hero__text { position: relative; z-index: 1; }
@media (min-width: 768px) { .lc-home-hero.lc-home-hero--dv { padding-top: clamp(128px, 11vw, 160px); } .lc-home-hero--dv .lc-display { max-width: 22ch; font-size: clamp(2.6rem, 4.6vw, 4.1rem); } .lc-home-hero--dv .lc-lead--lg { max-width: 680px; } }
.lc-home-hero--dv .lc-city { top: auto; bottom: 52%; height: 380px; z-index: -1; -webkit-mask-image: linear-gradient(to bottom, transparent, #000 30%, #000 72%, transparent); mask-image: linear-gradient(to bottom, transparent, #000 30%, #000 72%, transparent); }
.lc-home-hero--dv .lc-home-hero__visual { margin-top: clamp(40px, 5vw, 64px); max-width: 1040px; position: relative; z-index: 2; }
.lc-home-hero--dv .lc-home-hero__visual::before { inset: 10% 2% -2%; background: radial-gradient(50% 55% at 50% 45%, rgba(61, 92, 255, .22), transparent 70%); }
@media (max-width: 767px) {
  .lc-home-hero.lc-home-hero--dv { padding-top: 132px; padding-bottom: 48px; }
  .lc-home-hero--dv .lc-display { font-size: clamp(1.9rem, 8.6vw, 2.4rem); line-height: 1.06; max-width: 15ch; }
  .lc-home-hero--dv .lc-lead { font-size: 15px; margin-top: 22px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .lc-home-hero--dv .lc-actions { margin-top: 26px; gap: 8px; flex-wrap: nowrap; }
  .lc-home-hero--dv .lc-actions > a { flex: 1 1 0; min-width: 0; }
  .lc-home-hero--dv .lc-actions > a > button { width: 100%; height: 52px; font-size: 15px; }
  .lc-home-hero--dv .lc-actions > a > button > div { justify-content: center; padding: 0 10px; }
  .lc-home-hero--dv .lc-actions > a > button > div > span:last-child { display: none; }
  .lc-home-hero--dv .lc-hero-chips { display: none; }
  .lc-home-hero--dv .lc-city { bottom: calc(100% - 90px); height: 260px; }
  .lc-home-hero--dv .lc-home-hero__visual { margin-top: 30px; }
}

/* ---------- HOME: aplicativos ---------- */
.lc-apps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 3vw, 40px); align-items: start; max-width: 980px; margin: 0 auto; }
.lc-app { text-align: center; }
.lc-app .dv-phone { max-width: 250px; margin: 0 auto; }
.lc-app:nth-child(2) .dv-phone { max-width: 270px; }
.lc-app > h3 { margin-top: 22px; font-size: 17px; font-weight: 500; color: var(--lc-ink); }
.lc-app > p { margin: 6px auto 0; max-width: 30ch; font-size: 14.5px; color: var(--lc-muted); }
.lc-app__tag { display: inline-block; margin-top: 18px; padding: 4px 10px; border-radius: 99px; background: var(--lc-primary-50, #eef1ff); color: var(--lc-primary-600); font-size: 12px; font-weight: 600; }
@media (min-width: 768px) { .lc-app:nth-child(2) { margin-top: 44px; } }
.lc-app { display: block; text-decoration: none; } .lc-app:hover > h3 { color: var(--lc-primary); }
@media (max-width: 767px) {
  .lc-apps { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 14px; margin: 0 -16px; padding: 4px 16px 10px; scrollbar-width: none; }
  .lc-apps::-webkit-scrollbar { display: none; }
  .lc-app { flex: 0 0 72%; scroll-snap-align: center; }
  .lc-app .dv-phone, .lc-app:nth-child(2) .dv-phone { max-width: 230px; }
}
.ms-goal p { display: flex; align-items: center; gap: 10px; margin-top: 4px; } .ms-goal b { font-size: 15px; font-variant-numeric: tabular-nums; }
.ms-goal span { flex: 1; height: 6px; border-radius: 6px; background: #e3e8f0; overflow: hidden; } .ms-goal span i { display: block; height: 100%; width: 68%; border-radius: 6px; background: #3d5cff; transform-origin: left; }
.lv-on .ms-goal span i { animation: dvBar 1.6s cubic-bezier(.2, .8, .2, 1) .8s both; }
/* desktop amplo: texto à esquerda, dispositivos à direita, tudo na primeira dobra */
@media (min-width: 1100px) {
  .lc-home-hero--dv > .main-container { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6.6fr); gap: clamp(32px, 4vw, 64px); align-items: center; }
  .lc-home-hero.lc-home-hero--dv { padding-top: clamp(124px, 10vw, 150px); padding-bottom: clamp(64px, 6vw, 96px); }
  .lc-home-hero--dv .lc-home-hero__text { position: static; text-align: left; margin: 0; max-width: none; }
  
  .lc-home-hero--dv .lc-display { font-size: clamp(2.6rem, 3.6vw, 3.55rem); max-width: 15ch; margin-inline: 0; }
  .lc-home-hero--dv .lc-lead--lg { margin-inline: 0; max-width: 520px; }
  .lc-home-hero--dv .lc-actions, .lc-home-hero--dv .lc-hero-chips { justify-content: flex-start; }
  .lc-home-hero--dv .lc-hero-chips { gap: 8px 16px; }
  .lc-home-hero--dv .lc-home-hero__visual { margin: 0; max-width: none; }
  .lc-home-hero--dv .lc-city { left: auto; right: -12vw; width: calc(100% + 34vw); transform: none; bottom: 56%; height: 280px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 34%, #000 86%, transparent), linear-gradient(to bottom, transparent, #000 30%); -webkit-mask-composite: source-in; mask-image: linear-gradient(90deg, transparent, #000 34%, #000 86%, transparent), linear-gradient(to bottom, transparent, #000 30%); mask-composite: intersect; }
  .lc-home-hero--dv .dv-stage { padding-right: 11%; }
  .lc-home-hero--dv .dv-lbls { justify-content: flex-start; margin-top: 34px; }
}
.ms-next b { white-space: nowrap; font-size: 12px; }
.ms-hi, .ms-msg--in, .ms-msg--card b, .ms-sheet b, .ms-big, .ms-bill b { color: #0b0d12; }
.ms-sub, .ms-bill p { color: #5b6472; }

/* ---------- telas extras (projetos) ---------- */
.ms-kgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin-bottom: 8px; }
.ms-kgrid span { padding: 9px 10px; border-radius: 14px; background: #fff; }
.ms-kgrid small { display: block; font-size: 10px; color: #5b6472; } .ms-kgrid b { font-size: 18px; font-variant-numeric: tabular-nums; color: #0b0d12; }
.lv-on .ms-kgrid span { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.2s + var(--i) * .12s); }
.ms-bars { display: flex; align-items: flex-end; gap: 6px; height: 64px; margin-top: 8px; }
.ms-bars i { flex: 1; height: var(--h); border-radius: 5px 5px 2px 2px; background: linear-gradient(#7d93ff, #3d5cff); transform-origin: bottom; }
.lv-on .ms-bars i { animation: lvGrow .8s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.4s + var(--i) * 70ms); }
.ms-rank p { display: grid; grid-template-columns: 62px 1fr 30px; align-items: center; gap: 6px; margin-top: 6px; font-size: 10.5px; color: #3c4350; }
.ms-rank em { height: 6px; border-radius: 6px; background: #eef1f6; overflow: hidden; } .ms-rank em i { display: block; height: 100%; width: var(--w); border-radius: 6px; background: #3d5cff; transform-origin: left; }
.lv-on .ms-rank em i { animation: dvBar 1.2s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.8s + var(--i) * .15s); }
.ms-rank b { font-size: 10.5px; text-align: right; color: #0b0d12; }
.ms-auto { display: flex; align-items: center; gap: 8px; padding: 9px 10px; margin-bottom: 7px; border-radius: 14px; background: #fff; }
.ms-auto div { flex: 1; min-width: 0; } .ms-auto small { display: block; font-size: 9px; text-transform: uppercase; letter-spacing: .06em; color: #646c7a; }
.ms-auto strong { display: block; font-size: 11.5px; font-weight: 600; color: #0b0d12; margin-bottom: 2px; } .ms-auto strong.pri { color: #2c48e6; }
.lv-on .ms-auto { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.2s + var(--i) * .18s); }
.ms-tg { position: relative; width: 30px; height: 18px; flex-shrink: 0; border-radius: 99px; background: #d7dde5; }
.ms-tg::after { content: ""; position: absolute; left: 2px; top: 2px; width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .2); transition: transform .3s; }
.ms-tg.on { background: #22b07d; } .ms-tg.on::after { transform: translateX(12px); }
.lv-on .ms-auto:nth-of-type(5) .ms-tg { animation: msTg 4s ease-in-out 1.6s infinite; } .lv-on .ms-auto:nth-of-type(5) .ms-tg::after { animation: msTg2 4s ease-in-out 1.6s infinite; }
@keyframes msTg { 20%, 80% { background: #22b07d; } } @keyframes msTg2 { 20%, 80% { transform: translateX(12px); } }
.ms-runs { display: flex; justify-content: space-between; align-items: center; } .ms-runs b { font-size: 18px; color: #0b0d12; font-variant-numeric: tabular-nums; }
.ms-hub { position: relative; height: 104px; margin: 2px 0 8px; }
.ms-hub__c { position: absolute; left: 50%; top: 50%; width: 46px; height: 46px; margin: -23px 0 0 -23px; display: grid; place-items: center; border-radius: 50%; background: #0b0d12; color: #fff; font-size: 11px; font-weight: 700; box-shadow: 0 0 0 8px rgba(61, 92, 255, .14); }
.ms-hub i { position: absolute; left: 50%; top: 50%; width: 44px; height: 2px; transform-origin: 0 50%; transform: rotate(var(--a)) translateX(26px); background: repeating-linear-gradient(90deg, #9fb0ff 0 4px, transparent 4px 7px); }
.ms-hub i::after { content: ""; position: absolute; right: -6px; top: -4px; width: 10px; height: 10px; border-radius: 50%; background: #3d5cff; }
.lv-on .ms-hub i { animation: lvDash 1.2s linear infinite; } .lv-on .ms-hub__c { animation: msPulse 2.4s ease-in-out infinite; }
.ms-sync { display: grid; grid-template-columns: 10px 1fr auto; align-items: center; gap: 8px; padding: 8px 10px; margin-bottom: 5px; border-radius: 12px; background: #fff; }
.ms-sync > i { width: 8px; height: 8px; border-radius: 50%; background: #22b07d; } .ms-sync strong { font-size: 11.5px; color: #0b0d12; } .ms-sync small { font-size: 10px; color: #5b6472; }
.lv-on .ms-sync { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.4s + var(--i) * .15s); } .lv-on .ms-sync > i { animation: msPulse 2s ease-in-out infinite; animation-delay: calc(var(--i) * .3s); }
.ms--landing { padding-top: 0; }
.ms-lhero { position: relative; height: 150px; margin: 0 -14px 12px; overflow: hidden; } .ms-lhero svg { width: 100%; height: 100%; display: block; }
.ms-lhero span { position: absolute; left: 14px; bottom: 12px; padding: 4px 9px; border-radius: 99px; background: #fff; color: #2c48e6; font-size: 10px; font-weight: 700; }
.lv-on .ms-lhero svg { animation: msZoom 8s ease-in-out infinite alternate; } @keyframes msZoom { to { transform: scale(1.12); } }
.ms-tipos { display: flex; gap: 6px; margin-bottom: 10px; } .ms-tipos span { flex: 1; padding: 7px; border-radius: 10px; background: #fff; text-align: center; font-size: 10.5px; font-weight: 600; color: #0b0d12; }
.ms-tipos span:first-child { box-shadow: inset 0 0 0 1.5px #3d5cff; }
.ms-fld { display: block; padding: 9px 11px; margin-bottom: 6px; border-radius: 10px; background: #fff; border: 1px solid #e3e8f0; font-size: 11px; color: #0b0d12; overflow: hidden; }
.ms-fld em { font-style: normal; display: inline-block; white-space: nowrap; overflow: hidden; vertical-align: bottom; }
.lv-on .ms-fld em { animation: msType 1.4s steps(14) both; } .lv-on .ms-fld:nth-of-type(2) em { animation-delay: 1.5s; }
@keyframes msType { from { width: 0; } to { width: 100%; } }
.ms-scan { display: flex; gap: 10px; align-items: center; } .ms-scan b { display: block; font-size: 12px; color: #0b0d12; } .ms-scan p { font-size: 10px; color: #5b6472; }
.ms-paper { position: relative; width: 58px; height: 74px; flex-shrink: 0; padding: 9px 7px; border-radius: 6px; background: #f6f8fc; border: 1px solid #e3e8f0; overflow: hidden; }
.ms-paper i { display: block; height: 4px; margin-bottom: 6px; border-radius: 2px; background: #d7dde5; } .ms-paper i:nth-child(2n) { width: 70%; }
.ms-paper u { position: absolute; left: 0; right: 0; top: 0; height: 2px; background: #3d5cff; box-shadow: 0 0 10px #3d5cff; }
.lv-on .ms-paper u { animation: msScanY 2.2s ease-in-out infinite; } @keyframes msScanY { 50% { top: 96%; } }
.ms-note b { display: block; font-size: 11.5px; color: #0b0d12; margin-top: 2px; }
.ms-ticks { display: flex; gap: 2px; margin-top: 8px; } .ms-ticks i { flex: 1; height: 22px; border-radius: 2px; background: #22b07d; } .ms-ticks i.w { background: #f5b942; }
.lv-on .ms-ticks i { animation: lvGrow .5s ease both; animation-delay: calc(var(--i) * 30ms); transform-origin: bottom; }
.ms-cam { position: relative; height: 150px; margin-bottom: 9px; border-radius: 14px; overflow: hidden; background: #0b0d12; }
.ms-cam span, .ms-cam span svg { display: block; width: 100%; height: 100%; } .ms-cam span { opacity: .9; }
.ms-cam__f { position: absolute; inset: 18px 30px; border: 2px solid rgba(255, 255, 255, .85); border-radius: 10px; }
.lv-on .ms-cam__f { animation: msFocus 2.6s ease-in-out infinite; } @keyframes msFocus { 0%, 100% { transform: scale(1); } 40% { transform: scale(.9); } 50% { transform: scale(.92); border-color: #6fdc9a; } }
.ms-cam em { position: absolute; left: 10px; bottom: 8px; padding: 3px 8px; border-radius: 99px; background: rgba(0, 0, 0, .6); color: #fff; font-size: 9.5px; font-style: normal; }
.ms-rooms p { display: flex; align-items: center; gap: 8px; padding: 7px 10px; margin-bottom: 5px; border-radius: 11px; background: #fff; font-size: 11.5px; font-weight: 600; color: #0b0d12; }
.ms-rooms small { margin-left: auto; font-size: 10px; font-weight: 500; color: #5b6472; }
.ms-rooms i { width: 8px; height: 8px; border-radius: 50%; background: #d7dde5; } .ms-rooms .ok i { background: #22b07d; } .ms-rooms .warn i { background: #f5b942; }
.lv-on .ms-rooms p { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.4s + var(--i) * .2s); }
.ms-lotsvg { width: 100%; height: auto; display: block; margin-bottom: 9px; } .ms-lotsvg .m-road { stroke: #fff; stroke-width: 6; fill: none; }
.lv-on .ms-lotsvg .lt--x { animation: lvLot 2.4s ease-in-out infinite; }
.ms-lotcard b { display: block; font-size: 13px; color: #0b0d12; } .ms-lotcard p { display: flex; justify-content: space-between; margin: 6px 0 2px; font-size: 10.5px; color: #5b6472; } .ms-lotcard em { font-style: normal; font-weight: 600; color: #0f7a5b; }
.ms-esp { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; margin-bottom: 6px; }
.ms-esp i { height: 20px; border-radius: 4px; } .ms-esp .d { background: #b8e6cd; } .ms-esp .r { background: #ffcf66; } .ms-esp .v { background: #cfd5df; } .ms-esp .x { background: #b8e6cd; }
.lv-on .ms-esp .x { animation: msRes 5s ease-in-out 1s infinite; } @keyframes msRes { 20%, 100% { background: #3d5cff; box-shadow: 0 0 0 2px #fff, 0 0 0 4px #3d5cff; } }
.ms-leg { display: flex; gap: 10px; margin-bottom: 9px; font-size: 9.5px; color: #5b6472; } .ms-leg span::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 4px; border-radius: 2px; background: #b8e6cd; } .ms-leg .r::before { background: #ffcf66; } .ms-leg .v::before { background: #cfd5df; }
.ms-resv b { display: block; font-size: 18px; color: #0b0d12; margin: 2px 0 4px; } .ms-resv p { display: flex; justify-content: space-between; font-size: 10.5px; color: #5b6472; } .ms-timer { font-style: normal; font-weight: 700; color: #b45309; font-variant-numeric: tabular-nums; }
.ms-sl { margin-bottom: 10px; } .ms-sl p { display: flex; justify-content: space-between; font-size: 10.5px; color: #5b6472; margin-bottom: 5px; } .ms-sl b { color: #0b0d12; }
.ms-sl div { position: relative; height: 6px; border-radius: 6px; background: #e3e8f0; } .ms-sl div i { position: absolute; left: 0; top: 0; bottom: 0; width: var(--v); border-radius: 6px; background: #3d5cff; }
.ms-sl div em { position: absolute; top: 50%; left: var(--v); width: 16px; height: 16px; margin: -8px 0 0 -8px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 2px #3d5cff, 0 3px 8px rgba(0, 0, 0, .2); }
.lv-on .ms-sl div i { animation: msSl 4s ease-in-out infinite alternate; animation-delay: calc(var(--i) * .4s); } .lv-on .ms-sl div em { animation: msSl2 4s ease-in-out infinite alternate; animation-delay: calc(var(--i) * .4s); }
@keyframes msSl { from { width: calc(var(--v) - 18%); } } @keyframes msSl2 { from { left: calc(var(--v) - 18%); } }
.ms-parc b { display: block; font-size: 22px; color: #0b0d12; font-variant-numeric: tabular-nums; } .ms-parc p { font-size: 9px; color: #646c7a; margin-top: 2px; }
.lv-on .ms-parc b { animation: msPulseT 4s ease-in-out infinite; } @keyframes msPulseT { 50% { color: #2c48e6; } }
/* projeto: celular animado no lugar da ficha */
.lc-projdev { position: relative; max-width: 270px; margin: 0 auto; }
.lc-projdev::before { content: ""; position: absolute; inset: 12% -30% 8%; z-index: -1; background: radial-gradient(50% 50% at 50% 50%, rgba(61, 92, 255, .28), transparent 70%); filter: blur(24px); }
.lc-projdev__cap { margin-top: 16px; text-align: center; font-size: 12.5px; color: var(--lc-muted); }
@media (max-width: 1023px) { .lc-projdev { max-width: 230px; } }

/* ================= CICLO 360° ================= */
.lv--c360 { margin: 0; }
.c3 { position: relative; width: 100%; max-width: 560px; aspect-ratio: 1; margin: 0 auto; }
.c3-svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.c3-ring { fill: none; stroke: var(--lc-line-2); stroke-width: 1.2; stroke-dasharray: 3 6; }
.c3-ring--in { stroke-dasharray: 2 5; opacity: .8; }
.c3-prog { fill: none; stroke: var(--lc-primary); stroke-width: 3; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: 100; transform: rotate(-90deg); transform-origin: 200px 200px; transition: stroke-dashoffset 1.1s cubic-bezier(.65, 0, .35, 1); }
.c3-dotg { transform-origin: 200px 200px; transition: transform 1.1s cubic-bezier(.65, 0, .35, 1); } .c3-halo { fill: rgba(61, 92, 255, .18); animation: c3Halo 1.6s ease-out infinite; transform-origin: 200px 24px; } @keyframes c3Halo { from { transform: scale(.5); opacity: 1; } to { transform: scale(1.3); opacity: 0; } }
.c3-dot { fill: var(--lc-primary); filter: drop-shadow(0 0 6px rgba(61, 92, 255, .9)); }
.c3-st { position: absolute; z-index: 2; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; gap: 6px; cursor: default; }
.c3-st .c3-i { width: 46px; height: 46px; padding: 12px; border-radius: 15px; background: var(--lc-surface); border: 1px solid var(--lc-line); color: var(--lc-muted); stroke: currentColor; fill: none; stroke-width: 1.8; box-shadow: var(--lc-shadow); transition: all .45s var(--lc-ease); }
.c3-st b { font-size: 12.5px; font-weight: 500; color: var(--lc-muted); white-space: nowrap; transition: color .3s; }
.c3-st.is-done .c3-i { color: var(--lc-primary); border-color: rgba(61, 92, 255, .3); }
.c3-st.is-on .c3-i { background: #3d5cff; border-color: #3d5cff; color: #fff; transform: scale(1.14); box-shadow: 0 0 0 7px rgba(61, 92, 255, .16), 0 16px 30px -12px rgba(61, 92, 255, .7); }
.c3-st.is-on b { color: var(--lc-ink); }
.c3-cat { position: absolute; z-index: 1; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; gap: 3px; opacity: .55; transition: opacity .4s, transform .4s var(--lc-ease); }
.c3-cat .c3-i { width: 30px; height: 30px; padding: 7px; border-radius: 50%; background: var(--lc-soft); border: 1px solid var(--lc-line); color: var(--lc-muted); stroke: currentColor; fill: none; stroke-width: 1.8; transition: all .4s; }
.c3-cat em { font-style: normal; font-size: 10.5px; color: var(--lc-faint); }
.c3-cat.is-on { opacity: 1; transform: translate(-50%, -50%) scale(1.1); } .c3-cat.is-on .c3-i { background: rgba(61, 92, 255, .12); border-color: rgba(61, 92, 255, .4); color: var(--lc-primary); } .c3-cat.is-on em { color: var(--lc-ink); }
.c3-core { position: absolute; z-index: 3; left: 50%; top: 50%; width: 34%; transform: translate(-50%, -50%); padding: 10px 10px 12px; border-radius: 20px; background: var(--lc-surface); border: 1px solid var(--lc-line); box-shadow: 0 30px 60px -28px rgba(23, 37, 120, .45); text-align: center; }
.c3-thumb { height: 64px; border-radius: 12px; overflow: hidden; margin-bottom: 8px; } .c3-thumb svg { width: 100%; height: 100%; display: block; }
.c3-core small { display: block; font-size: 11px; color: var(--lc-faint); }
.c3-status { display: block; min-height: 2.5em; margin-top: 3px; font-size: 13px; font-weight: 500; line-height: 1.25; color: var(--lc-ink); }
.c3-status.is-swap { animation: c3Swap .5s var(--lc-ease) both; } @keyframes c3Swap { from { opacity: 0; transform: translateY(6px); } }
.c3-step { display: inline-block; margin-top: 6px; padding: 3px 9px; border-radius: 99px; background: rgba(61, 92, 255, .1); color: var(--lc-primary-600); font-size: 10.5px; font-weight: 600; } .c3-step em { font-style: normal; }
@media (max-width: 640px) { .c3-st .c3-i { width: 36px; height: 36px; padding: 9px; border-radius: 12px; } .c3-st b { font-size: 10.5px; } .c3-cat em { display: none; } .c3-cat .c3-i { width: 24px; height: 24px; padding: 5px; } .c3-core { width: 40%; padding: 7px; } .c3-thumb { height: 40px; } .c3-status { font-size: 11px; } .c3-core small { font-size: 9.5px; } }
@media (prefers-reduced-motion: reduce) { .c3 * { transition: none !important; animation: none !important; } }

/* ---------- serviços: abordagem 360 ---------- */
.lc-360 { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.lc-360__p { display: grid; gap: 12px; margin-top: 28px; }
.lc-360__p li { display: flex; gap: 14px; padding: 16px 18px; border-radius: 18px; background: var(--lc-surface); border: 1px solid var(--lc-line); }
.lc-360__p strong { display: block; font-size: 15.5px; font-weight: 500; color: var(--lc-ink); } .lc-360__p span { font-size: 14px; color: var(--lc-muted); }
.lc-360__n { flex-shrink: 0; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; background: rgba(61, 92, 255, .1); color: var(--lc-primary-600); font-size: 13px; font-weight: 600; }
@media (max-width: 1023px) { .lc-360 { grid-template-columns: minmax(0, 1fr); } .lc-360 > :first-child { text-align: center; } .lc-360__p { text-align: left; } }
/* diagnóstico rápido */
.lc-quiz { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: clamp(20px, 3vw, 40px); padding: clamp(22px, 3.4vw, 44px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); box-shadow: var(--lc-shadow); }
.lc-quiz__q { margin-top: 22px; } .lc-quiz__q > p { font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--lc-faint); margin-bottom: 10px; }
.lc-quiz__opts { display: flex; flex-wrap: wrap; gap: 8px; }
.lc-qopt { padding: 9px 14px; border-radius: 99px; border: 1px solid var(--lc-line-2); background: var(--lc-soft); font-size: 14px; color: var(--lc-text); cursor: pointer; transition: all .25s; }
.lc-qopt:hover { border-color: rgba(61, 92, 255, .45); }
.lc-qopt[aria-pressed="true"] { background: #3d5cff; border-color: #3d5cff; color: #fff; box-shadow: 0 10px 22px -12px rgba(61, 92, 255, .8); }
.lc-quiz__res { position: relative; display: flex; flex-direction: column; padding: 22px; border-radius: 22px; background: radial-gradient(120% 100% at 100% 0%, rgba(61, 92, 255, .45), transparent 60%), #0b0d12; color: #e8ebf5; overflow: hidden; }
.lc-quiz__res .lc-kicker { color: #9fb0ff; }
.lc-quiz__res h3 { margin-top: 8px; font-size: 20px; font-weight: 500; color: #fff; line-height: 1.2; }
.lc-quiz__list { display: grid; gap: 8px; margin: 16px 0 18px; }
.lc-quiz__list a { display: flex; align-items: center; gap: 10px; padding: 11px 13px; border-radius: 14px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .08); color: #fff; font-size: 14px; transition: background .25s, transform .3s var(--lc-ease); animation: c3Swap .5s var(--lc-ease) both; }
.lc-quiz__list a:hover { background: rgba(255, 255, 255, .12); transform: translateX(3px); }
.lc-quiz__list a svg { margin-left: auto; flex-shrink: 0; }
.lc-quiz__cta { margin-top: auto; display: flex; align-items: center; justify-content: center; gap: 8px; height: 50px; border-radius: 999px; background: #3d5cff; color: #fff; font-size: 15px; font-weight: 500; transition: background .25s; } .lc-quiz__cta:hover { background: #4f6bff; }
.lc-quiz__note { margin-top: 10px; font-size: 12px; color: rgba(232, 235, 245, .6); text-align: center; }
@media (max-width: 1023px) { .lc-quiz { grid-template-columns: minmax(0, 1fr); } }
/* catálogo: imagem por frente */
.lc-group__img { margin: 0 0 18px; border-radius: 20px; overflow: hidden; aspect-ratio: 1200 / 400; background: #0b0d12; }
.lc-group__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
/* como começamos */
.lc-start { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; counter-reset: st; }
.lc-start li { position: relative; padding: 24px; border-radius: 22px; background: var(--lc-surface); border: 1px solid var(--lc-line); }
.lc-start li::before { counter-increment: st; content: "0" counter(st); display: block; font-size: 13px; font-weight: 600; color: var(--lc-primary-600); margin-bottom: 14px; }
.lc-start strong { display: block; font-size: 17px; font-weight: 500; color: var(--lc-ink); } .lc-start span { display: block; margin-top: 6px; font-size: 14.5px; color: var(--lc-muted); }
@media (max-width: 767px) { .lc-start { grid-template-columns: minmax(0, 1fr); } }
/* barra fixa de conversão (mobile) */
.lc-stick { position: fixed; z-index: 45; left: 12px; right: 12px; bottom: 14px; display: none; align-items: center; justify-content: center; gap: 8px; height: 52px; border-radius: 999px; background: #3d5cff; color: #fff; font-size: 15px; font-weight: 500; box-shadow: 0 16px 30px -12px rgba(61, 92, 255, .7); transform: translateY(140%); transition: transform .45s var(--lc-ease); }
.lc-stick.is-on { transform: none; }
@media (max-width: 1023px) { .lc-stick { display: flex; } }

/* ================= METODOLOGIA ================= */
.sp { position: relative; height: 330px; padding: 12px; }
.sp-cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; height: 100%; }
.sp-col { border-radius: 12px; background: #f4f6fa; padding: 10px 8px; } .sp-col p { font-size: 11.5px; font-weight: 600; color: #5b6472; }
.sp-card { position: absolute; left: 18px; width: calc((100% - 48px) / 4 - 12px); top: calc(44px + var(--i) * 44px); height: 38px; padding: 5px 9px; line-height: 1.3; transform: translateX(calc(var(--c, 0) * (100% + 20px))); border-radius: 10px; background: #fff; border: 1px solid #e3e8f0; box-shadow: 0 6px 14px -10px rgba(11, 13, 18, .3); }
.sp-card b { display: block; font-size: 11px; font-weight: 600; color: #0b0d12; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-right: 14px; } .sp-card small { font-size: 9.5px; color: #5b6472; }
.sp-av { position: absolute; right: 7px; top: 7px; width: 12px; height: 12px; border-radius: 50%; background: #8ea2ff; } .sp-av--1 { background: #6fdc9a; } .sp-av--2 { background: #ffcf66; }
.lv-on .sp-card { animation: spMove 12s cubic-bezier(.65, 0, .35, 1) infinite; animation-delay: calc(var(--i) * -1.9s); }
@keyframes spMove { 0%, 18% { transform: none; } 25%, 43% { transform: translateX(calc(100% + 20px)); box-shadow: 0 16px 26px -12px rgba(61, 92, 255, .45); border-color: rgba(61, 92, 255, .4); } 50%, 68% { transform: translateX(calc(200% + 40px)); } 75%, 97% { transform: translateX(calc(300% + 60px)); border-color: #b8e6cd; opacity: 1; } 100% { transform: translateX(calc(300% + 60px)); opacity: 0; } }
.sp-foot { position: absolute; left: 12px; right: 12px; bottom: 10px; display: flex; align-items: center; gap: 10px; font-size: 11px; color: #5b6472; }
.sp-foot em { flex: 1; height: 5px; border-radius: 5px; background: #e3e8f0; overflow: hidden; } .sp-foot em i { display: block; height: 100%; width: 100%; background: linear-gradient(90deg, #3d5cff, #22b07d); transform-origin: left; }
.lv-on .sp-foot em i { animation: dvBar 12s linear infinite; }
.sp-cols { height: calc(100% - 26px); }
.gt { position: relative; padding: 34px 16px 16px; }
.gt-row { display: grid; grid-template-columns: 150px 1fr; align-items: center; gap: 10px; height: 34px; } .gt-row span { font-size: 12px; color: #3c4350; }
.gt-track { position: relative; height: 100%; border-left: 1px solid #eef1f6; background: repeating-linear-gradient(90deg, transparent 0 calc(12.5% - 1px), #f1f4f9 calc(12.5% - 1px) 12.5%); }
.gt-track i { position: absolute; top: 8px; bottom: 8px; left: var(--x); width: var(--w); border-radius: 8px; background: linear-gradient(90deg, #6f86ff, #3d5cff); transform-origin: left; }
.gt-row:nth-child(n+7) .gt-track i { background: linear-gradient(90deg, #6fdc9a, #22b07d); }
.lv-on .gt-track i { animation: lvGrow2 .9s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.2s + var(--i) * .22s); }
@keyframes lvGrow2 { from { transform: scaleX(0); } }
.gt-marks { position: absolute; left: calc(16px + 160px); right: 16px; top: 8px; height: 20px; }
.gt-marks em { position: absolute; left: var(--x); transform: translateX(-50%); padding: 2px 7px; border-radius: 99px; background: #0b0d12; color: #fff; font-size: 9.5px; font-style: normal; white-space: nowrap; }
.lv-on .gt-marks em { animation: msIn .5s ease both; animation-delay: calc(1.8s + var(--i) * .3s); }
.gt-now { position: absolute; top: 30px; bottom: 12px; left: calc(16px + 160px); width: 2px; background: #f04438; border-radius: 2px; }
.lv-on .gt-now { animation: gtNow 10s linear infinite; } @keyframes gtNow { from { left: calc(16px + 160px); } to { left: calc(100% - 16px); } }
@media (max-width: 640px) { .gt-row { grid-template-columns: 96px 1fr; } .gt-row span { font-size: 10.5px; } .gt-marks, .gt-now { left: calc(16px + 106px); } .gt-marks em { font-size: 8.5px; } @keyframes gtNow { from { left: calc(16px + 106px); } to { left: calc(100% - 16px); } } .sp-card b { font-size: 9.5px; } .sp-card small { display: none; } .sp { height: 290px; } .sp-card { top: calc(40px + var(--i) * 40px); height: 34px; } }
/* fases da metodologia */
.lc-phases { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: clamp(20px, 4vw, 56px); align-items: start; }
.lc-phtabs { display: grid; gap: 8px; }
.lc-phtab { position: relative; display: flex; align-items: center; gap: 14px; padding: 16px 18px; border-radius: 18px; border: 1px solid var(--lc-line); background: var(--lc-surface); text-align: left; cursor: pointer; transition: all .3s var(--lc-ease); overflow: hidden; }
.lc-phtab strong { display: block; font-size: 16px; font-weight: 500; color: var(--lc-ink); } .lc-phtab small { display: block; font-size: 13px; color: var(--lc-muted); }
.lc-phtab b { flex-shrink: 0; width: 36px; height: 36px; display: grid; place-items: center; border-radius: 12px; background: var(--lc-soft); border: 1px solid var(--lc-line); font-size: 13px; font-weight: 600; color: var(--lc-muted); }
.lc-phtab[aria-selected="true"] { border-color: rgba(61, 92, 255, .45); box-shadow: 0 16px 30px -20px rgba(61, 92, 255, .6); }
.lc-phtab[aria-selected="true"] b { background: #3d5cff; border-color: #3d5cff; color: #fff; }
.lc-phtab::after { content: ""; position: absolute; left: 0; bottom: 0; height: 3px; width: 100%; background: #3d5cff; transform: scaleX(0); transform-origin: left; }
.lc-phtab[aria-selected="true"]::after { animation: dvBar 7s linear both; }
.lc-phpanel { border-radius: var(--lc-r-lg); overflow: hidden; background: var(--lc-surface); border: 1px solid var(--lc-line); box-shadow: var(--lc-shadow); }
.lc-phpanel[hidden] { display: none; }
.lc-phpanel img { display: block; width: 100%; aspect-ratio: 1200 / 640; object-fit: cover; background: #0b0d12; animation: c3Swap .6s var(--lc-ease) both; }
.lc-phpanel__b { padding: clamp(20px, 3vw, 32px); }
.lc-phpanel__b h3 { font-size: 22px; font-weight: 500; color: var(--lc-ink); } .lc-phpanel__b > p { margin-top: 8px; color: var(--lc-muted); }
.lc-phsteps { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; margin-top: 18px; }
.lc-phsteps li { padding: 14px; border-radius: 16px; background: var(--lc-soft); border: 1px solid var(--lc-line); } .lc-phsteps strong { display: block; font-size: 14.5px; font-weight: 500; color: var(--lc-ink); } .lc-phsteps span { display: block; margin-top: 4px; font-size: 13px; color: var(--lc-muted); }
.lc-phout { margin-top: 16px; font-size: 14px; color: var(--lc-text); } .lc-phout b { color: var(--lc-primary-600); font-weight: 600; }
@media (max-width: 1023px) { .lc-phases { grid-template-columns: minmax(0, 1fr); } .lc-phtabs { grid-auto-flow: column; grid-auto-columns: minmax(210px, 1fr); overflow-x: auto; scrollbar-width: none; margin: 0 -16px; padding: 2px 16px 6px; } .lc-phtabs::-webkit-scrollbar { display: none; } }
.lc-mviz { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; }
@media (max-width: 1023px) { .lc-mviz { grid-template-columns: minmax(0, 1fr); } }
.lc-heroimg { margin: 0; border-radius: var(--lc-r-lg); overflow: hidden; background: #0b0d12; box-shadow: 0 40px 80px -40px rgba(23, 37, 120, .55); aspect-ratio: 4 / 3; }
.lc-heroimg img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ================= CONTATO v5 ================= */
.lc-brief__top { display: flex; align-items: center; gap: 14px; }
.lc-brief__ring { position: relative; width: 58px; height: 58px; flex-shrink: 0; }
.lc-brief__ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.lc-brief__ring circle { fill: none; stroke-width: 4.5; } .lc-brief__ring .bg { stroke: var(--lc-line); } .lc-brief__ring .fg { stroke: #3d5cff; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: 100; transition: stroke-dashoffset .6s var(--lc-ease), stroke .3s; }
.lc-brief__ring b { position: absolute; inset: 0; display: grid; place-items: center; font-size: 13px; font-weight: 600; color: var(--lc-ink); font-variant-numeric: tabular-nums; }
.lc-brief.is-full .lc-brief__ring .fg { stroke: #22b07d; }
.lc-brief__h { margin-top: 2px; font-size: 15px; font-weight: 500; color: var(--lc-ink); }
.lc-brief__list { display: grid; gap: 6px; margin-top: 16px; }
.lc-brief__list li { display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: 12px; background: var(--lc-soft); border: 1px solid var(--lc-line); transition: border-color .3s, background .3s; }
.lc-brief__list i { position: relative; width: 18px; height: 18px; flex-shrink: 0; border-radius: 50%; border: 2px solid var(--lc-line-2); transition: all .3s; }
.lc-brief__list li.is-ok i { background: #22b07d; border-color: #22b07d; } .lc-brief__list li.is-ok i::after { content: ""; position: absolute; left: 4.5px; top: 1.5px; width: 4px; height: 8px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.lc-brief__list span { min-width: 0; } .lc-brief__list small { display: block; font-size: 11.5px; color: var(--lc-faint); }
.lc-brief__list b { display: block; font-size: 13.5px; font-weight: 500; color: var(--lc-faint); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lc-brief__list li.is-ok b { color: var(--lc-ink); } .lc-brief__list li.is-ok { border-color: rgba(34, 176, 125, .3); }
.lc-brief__list li.is-new { animation: c3Swap .45s var(--lc-ease) both; }
.lc-road { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.lc-road::before, .lc-road::after { content: ""; position: absolute; left: 10%; right: 10%; top: 23px; height: 2px; background: var(--lc-line-2); }
.lc-road::after { background: linear-gradient(90deg, #3d5cff, #22b07d); transform: scaleX(0); transform-origin: left; transition: transform 2.4s cubic-bezier(.65, 0, .35, 1); }
.lc-road.is-in::after { transform: scaleX(1); }
.lc-road li { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; text-align: center; }
.lc-road__dot { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 16px; background: var(--lc-surface); border: 1px solid var(--lc-line); color: var(--lc-muted); box-shadow: var(--lc-shadow); transition: all .5s var(--lc-ease); transition-delay: calc(var(--i) * .45s); }
.lc-road.is-in .lc-road__dot { background: #3d5cff; border-color: #3d5cff; color: #fff; box-shadow: 0 0 0 6px rgba(61, 92, 255, .14); }
.lc-road strong { margin-top: 14px; font-size: 16px; font-weight: 500; color: var(--lc-ink); } .lc-road small { margin-top: 4px; font-size: 13.5px; color: var(--lc-muted); max-width: 22ch; }
@media (max-width: 767px) {
  .lc-road { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .lc-road::before, .lc-road::after { left: 23px; right: auto; top: 24px; bottom: 24px; width: 2px; height: auto; } .lc-road::after { transform: scaleY(0); transform-origin: top; } .lc-road.is-in::after { transform: scaleY(1); }
  .lc-road li { display: grid; grid-template-columns: 48px 1fr; column-gap: 14px; text-align: left; align-items: start; padding-bottom: 18px; }
  .lc-road__dot { grid-row: span 2; } .lc-road strong { margin-top: 2px; } .lc-road small { max-width: none; }
}
@media (prefers-reduced-motion: reduce) { .lc-road::after, .lc-road__dot { transition: none !important; } }

/* ================= RODAPÉ v4 ================= */
.lc-fcol__t { display: flex; align-items: center; gap: 10px; }
.lc-fcol__ic { width: 30px; height: 30px; display: grid; place-items: center; flex-shrink: 0; border-radius: 10px; background: rgba(61, 92, 255, .1); color: var(--lc-primary); }
.lc-fcol--acc summary { list-style: none; cursor: default; } .lc-fcol--acc summary::-webkit-details-marker { display: none; }
.lc-fcol__chev { display: none; }
.lc-fcol--acc ul li a, .lc-footer--v3 .lc-fcol ul a { display: inline-flex; align-items: center; gap: 9px; }
.lc-flink__i { width: 15px; height: 15px; flex-shrink: 0; color: var(--lc-faint); transition: color .25s, transform .3s var(--lc-ease); }
.lc-fcol ul a:hover .lc-flink__i { color: var(--lc-primary); transform: translateX(2px); }
.lc-fcontacts { display: grid; gap: 10px; }
.lc-fcontact__mail { font-weight: 400; word-break: break-all; }
@media (min-width: 768px) { .lc-fcol--acc summary { pointer-events: none; } }
@media (max-width: 767px) {
  .lc-footer--v3 .lc-footer__grid { grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 32px; }
  .lc-fcol--contact { gap: 10px; margin-bottom: 18px; }
  .lc-fcontacts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .lc-fcontact { flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 12px 6px; text-align: center; font-size: 0; } .lc-fcontact span { font-size: 0; }
  .lc-fcontact small { font-size: 12px; color: var(--lc-ink); font-weight: 500; }
  .lc-fcontact svg { width: 22px; height: 22px; }
  .lc-fcontact b, .lc-fcontact__mail { display: none; }
  .lc-fbrand { text-align: center; font-size: 12.5px; }
  .lc-fcol--acc { border-top: 1px solid var(--lc-line); }
  .lc-fcol--acc:last-child { border-bottom: 1px solid var(--lc-line); }
  .lc-fcol--acc summary { cursor: pointer; padding: 14px 2px; margin: 0; }
  .lc-fcol__chev { display: block; margin-left: auto; width: 9px; height: 9px; border: solid var(--lc-muted); border-width: 0 1.6px 1.6px 0; transform: rotate(45deg) translate(-2px, -2px); transition: transform .3s var(--lc-ease); }
  .lc-fcol--acc[open] .lc-fcol__chev { transform: rotate(-135deg) translate(-2px, -2px); }
  .lc-fcol--acc ul { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px; padding: 0 2px 16px; }
  .lc-fcol--acc ul a { font-size: 13.5px; }
  .lc-footer--v3 .lc-footer__bottom { margin-top: 24px; padding-top: 18px; }
}
.lc-fmobline { display: none; }
@media (max-width: 767px) { .lc-fmobline { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 8px; font-size: 13px; color: var(--lc-muted); } .lc-fmobline a { color: var(--lc-text) !important; font-size: 13px; } }
.lc-quiz__cta { height: auto; min-height: 50px; padding: 10px 18px; text-align: center; line-height: 1.25; }
@media (max-width: 1023px) { .lc-quiz > div:first-child { text-align: center; } .lc-quiz__opts { justify-content: center; } }

@media (max-width: 767px) { .lc-footer--v3 .lc-footer__bottom { padding-bottom: 28px; } }

/* mini ilustração: sincronização CRM ↔ portais (substitui a antiga "nodes") */
.lc-mini--sync { display: flex; align-items: center; justify-content: space-between; padding: 10px 12px; }
.lc-mini--sync span { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; min-width: 58px; height: 42px; padding: 0 10px; border-radius: 10px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .12); }
.lc-mini--sync span b { font-size: 11px; font-weight: 600; color: #fff; line-height: 1.2; } .lc-mini--sync span small { font-size: 9.5px; color: rgba(232, 235, 245, .6); line-height: 1.2; }
.lc-mini--sync span.z { border-color: rgba(111, 220, 154, .35); animation: lcSyncOk 2.4s ease-in-out infinite; }
@keyframes lcSyncOk { 0%, 60%, 100% { box-shadow: none; } 70% { box-shadow: 0 0 0 4px rgba(111, 220, 154, .18); } }
.lc-mini--sync em { position: absolute; left: 76px; right: 76px; top: 50%; height: 2px; margin-top: -1px; background: repeating-linear-gradient(90deg, rgba(185, 198, 255, .45) 0 5px, transparent 5px 9px); }
.lc-mini--sync i { position: absolute; z-index: 1; top: 50%; left: 76px; width: 8px; height: 8px; margin-top: -4px; border-radius: 2px; background: #8ea2ff; box-shadow: 0 0 8px rgba(142, 162, 255, .9); animation: lcSyncGo 2.4s cubic-bezier(.45, 0, .55, 1) infinite; }
.lc-mini--sync i:nth-of-type(2) { animation-delay: .8s; background: #b9a2ff; }
.lc-mini--sync i.back { background: #6fdc9a; box-shadow: 0 0 8px rgba(111, 220, 154, .9); border-radius: 50%; animation-name: lcSyncBack; animation-delay: 1.2s; }
@keyframes lcSyncGo { 0% { left: 76px; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { left: calc(100% - 84px); opacity: 0; } }
@keyframes lcSyncBack { 0% { left: calc(100% - 84px); opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { left: 76px; opacity: 0; } }
.lc-mini--sync u { position: absolute; z-index: 3; right: 6px; top: 6px; width: 14px; height: 14px; border-radius: 50%; background: #22b07d; transform: scale(0); animation: lcSyncChk 2.4s ease-in-out infinite; }
.lc-mini--sync u::after { content: ""; position: absolute; left: 4.5px; top: 2px; width: 3.5px; height: 7px; border: solid #fff; border-width: 0 1.6px 1.6px 0; transform: rotate(45deg); }
@keyframes lcSyncChk { 0%, 62% { transform: scale(0); } 72%, 92% { transform: scale(1); } 100% { transform: scale(0); } }
@media (prefers-reduced-motion: reduce) { .lc-mini--sync * { animation: none !important; } .lc-mini--sync i { display: none; } }
@media (max-width: 767px) {
  .lc-fcol--acc:last-child { border-bottom: 0; }
  .lc-fcontact small { display: none; }
  .lc-fcontact { padding: 14px 6px; }
  .lc-fcontact svg { width: 24px; height: 24px; }
}
/* serviço: notebook + celular com a solução no lugar do card de resumo */
.lc-svcdev { position: relative; }
.lc-svcdev::before { content: ""; position: absolute; inset: 6% -6% -4%; z-index: -1; background: radial-gradient(50% 55% at 50% 45%, rgba(61, 92, 255, .24), transparent 70%); filter: blur(28px); }
.lc-svcdev .lv--duo { margin: 0; }
.lc-svcdev .dv-stage { padding-right: 12%; }
.lc-svcdev .dv-phone--stage { width: 27%; bottom: -8%; }
@media (max-width: 1023px) { .lc-svcdev { max-width: 560px; margin: 8px auto 24px; } }
/* notebook no celular: mantém o layout de desktop de todos os visuais */
@media (max-width: 767px) {
  .dv-fit .lv-fin { grid-template-columns: 1.1fr 1fr; } .dv-fit .lv-invest { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
  .dv-fit .lv-flow { flex-direction: row; gap: 0; padding: 22px 18px 10px; } .dv-fit .lv-step { flex-direction: column; text-align: center; } .dv-fit .lv-conn { display: block; }
  .dv-fit .lv-log { margin: 4px 18px 18px; font-size: 12px; height: auto; }
  .dv-fit .lv-sec { grid-template-columns: 150px 1fr; justify-items: stretch; }
  .dv-fit .lv-arch { grid-template-columns: minmax(0, 1fr) 44px; padding: 18px; } .dv-fit .lv-arch__row { grid-template-columns: 112px minmax(0, 1fr); gap: 10px; }
  .dv-fit .lv-arch__boxes { grid-auto-flow: column; grid-template-columns: none; } .dv-fit .lv-arch__link { margin-left: 122px; height: 26px; } .dv-fit .lv-arch__side { height: auto; } .dv-fit .lv-arch__side span { writing-mode: vertical-rl; transform: rotate(180deg); }
  .dv-fit .lv-arch__side i { left: 6px; right: 6px; top: 0; bottom: auto; width: auto; height: 2px; } .dv-fit.dv-fit .lv-on .lv-arch__side i, .lv-on .dv-fit .lv-arch__side i { animation-name: lvScanY; }
  .dv-fit .lv-map { height: 300px; } .dv-fit .lv-mapcard { right: auto; max-width: 300px; }
  .dv-fit .lv-lotcard { position: absolute; max-width: 210px; margin: 0; }
  .dv-fit .lv-jour { grid-template-columns: repeat(8, minmax(0, 1fr)); row-gap: 8px; } .dv-fit .lv-jtrack { display: block; }
  .dv-fit .lv-chat { height: 270px; padding: 16px; } .dv-fit .lv-msg { font-size: 13px; max-width: 78%; }
  .dv-fit .lv-code { font-size: 12.5px; } .dv-fit .lv-cl { gap: 14px; padding: 0 16px; } .dv-fit .lv-term { font-size: 12px; padding: 12px 16px; }
  .dv-fit .lv-kpi b { font-size: 20px; } .dv-fit .lv--hub .lv-svg--wide { display: block; } .dv-fit .lv--hub .lv-svg--tall { display: none; } .dv-fit .lv-svg { padding: 8px; }
  .dv-fit .lv-eco__n b { font-size: 13px; }
}

/* ================= SEGURANÇA PATRIMONIAL / HOLDING ================= */
.vt-ic { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.vt { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 12px; padding: 14px; background: #f6f8fc; }
.vt-main { display: grid; gap: 6px; align-content: start; }
.vt-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 4px; font-size: 11.5px; color: #3c4350; }
.vt-head span, .vt-head em { display: inline-flex; align-items: center; gap: 6px; } .vt-head em { font-style: normal; padding: 4px 9px; border-radius: 99px; background: #0b0d12; color: #fff; font-size: 10.5px; }
.vt-row { display: grid; grid-template-columns: 10px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 9px 11px; border-radius: 12px; background: #fff; border: 1px solid #e6eaf2; }
.vt-row > i { width: 8px; height: 8px; border-radius: 50%; background: #22b07d; } .vt-row--warn > i { background: #f5b942; } .vt-row--crit > i { background: #f04438; box-shadow: 0 0 0 4px rgba(240, 68, 56, .15); }
.vt-row b { display: block; font-size: 12px; color: #0b0d12; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .vt-row small { font-size: 10.5px; color: #5b6472; }
.vt-val { position: relative; min-width: 74px; text-align: right; font-size: 12px; font-weight: 600; font-variant-numeric: tabular-nums; color: #0b0d12; }
.vt-val em, .hd-total em, .ms-hid em { font-style: normal; letter-spacing: .08em; color: #8a93a2; }
.vt-val u, .hd-total u, .ms-hid u { position: absolute; right: 0; top: 0; text-decoration: none; opacity: 0; color: #0f7a5b; }
.lv-on .vt-row { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.2s + var(--i) * .12s); }
.lv-on .vt-row:nth-of-type(3) .vt-val em, .lv-on .vt-row:nth-of-type(3) .vt-val u { animation: vtReveal 7s ease-in-out 1.8s infinite; } .lv-on .vt-row:nth-of-type(3) .vt-val u { animation-name: vtReveal2; }
@keyframes vtReveal { 0%, 10%, 70%, 100% { opacity: 1; filter: none; } 18%, 62% { opacity: 0; filter: blur(4px); } }
@keyframes vtReveal2 { 0%, 10%, 70%, 100% { opacity: 0; filter: blur(4px); } 18%, 62% { opacity: 1; filter: none; } }
.lv-on .vt-row--crit { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both, vtCrit 2.4s ease-in-out 1.6s infinite; animation-delay: calc(.2s + var(--i) * .12s), 1.6s; }
@keyframes vtCrit { 50% { border-color: rgba(240, 68, 56, .45); box-shadow: 0 0 0 3px rgba(240, 68, 56, .08); } }
.vt-side { display: grid; gap: 10px; align-content: start; }
.vt-shield { display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 14px; background: #0b0d12; color: #fff; }
.vt-shield svg { width: 44px; height: 50px; flex-shrink: 0; } .vt-shield .s { fill: rgba(61, 92, 255, .25); stroke: #8ea2ff; stroke-width: 2.5; } .vt-shield .c { fill: none; stroke: #6fdc9a; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 40; stroke-dashoffset: 40; }
.lv-on .vt-shield .c { animation: vtChk 4s ease-in-out .6s infinite; } @keyframes vtChk { 25%, 85% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: 0; opacity: 0; } }
.lv-on .vt-shield .s { animation: vtPulse 2.6s ease-in-out infinite; } @keyframes vtPulse { 50% { filter: drop-shadow(0 0 10px rgba(142, 162, 255, .9)); } }
.vt-shield b { display: block; font-size: 13px; } .vt-shield small { font-size: 10.5px; color: rgba(232, 235, 245, .65); }
.vt-log { padding: 10px; border-radius: 12px; background: #0f1218; font: 10.5px/1.6 ui-monospace, SFMono-Regular, Menlo, monospace; color: #b9c6ff; }
.vt-log p { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .vt-log p.deny { color: #ff9c92; }
.lv-on .vt-log p { animation: lvLog2 9s infinite; animation-delay: calc(.8s + var(--i) * .7s); }
/* holding */
.hd { padding: 14px; background: #f6f8fc; }
.hd-top { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.hd-root { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 14px; background: #0b0d12; color: #fff; } .hd-root .vt-ic { width: 26px; height: 26px; padding: 5px; border-radius: 8px; background: rgba(142, 162, 255, .2); color: #b9c6ff; }
.hd-root b { display: block; font-size: 13px; } .hd-root small { font-size: 10.5px; color: rgba(232, 235, 245, .6); }
.hd-total { position: relative; padding: 10px 12px; border-radius: 14px; background: #fff; border: 1px solid #e6eaf2; } .hd-total small { display: block; font-size: 10.5px; color: #5b6472; }
.hd-total b { position: relative; display: block; font-size: 18px; color: #0b0d12; font-variant-numeric: tabular-nums; } .hd-total u { left: 0; right: auto; }
.lv-on .hd-total em { animation: vtReveal 8s ease-in-out 2.2s infinite; } .lv-on .hd-total u { animation: vtReveal2 8s ease-in-out 2.2s infinite; }
.hd-2fa { display: inline-flex; align-items: center; gap: 6px; margin-top: 3px; font-size: 10px; color: #0f7a5b; } .hd-2fa i { width: 7px; height: 7px; border-radius: 50%; background: #22b07d; }
.lv-on .hd-2fa { animation: vtReveal2 8s ease-in-out 2s infinite; }
.hd-lines { display: block; width: 100%; height: 34px; } .hd-lines path { fill: none; stroke: #b9c6ff; stroke-width: 1.6; stroke-dasharray: 4 4; vector-effect: non-scaling-stroke; } .lv-on .hd-lines path { animation: lvDash 2s linear infinite; }
.hd-ents { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.hd-ent { padding: 10px; border-radius: 12px; background: #fff; border: 1px solid #e6eaf2; text-align: center; } .hd-ent b { display: block; font-size: 12px; color: #0b0d12; } .hd-ent small { display: block; font-size: 10px; color: #5b6472; }
.hd-mask { display: inline-block; margin-top: 6px; padding: 3px 8px; border-radius: 99px; background: #eef1f6; font-size: 10.5px; letter-spacing: .06em; color: #646c7a; }
.lv-on .hd-ent { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.5s + var(--i) * .15s); }
.hd-foot { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 12px; font-size: 10.5px; color: #3c4350; } .hd-foot span { display: inline-flex; align-items: center; gap: 6px; } .hd-foot i { width: 7px; height: 7px; border-radius: 50%; } .hd-foot .g { background: #22b07d; } .hd-foot .a { background: #f5b942; }
/* celular: monitoramento e cofre */
.ms-gh { display: flex; align-items: center; gap: 10px; padding: 12px; margin-bottom: 10px; border-radius: 16px; background: #0b0d12; color: #fff; }
.ms-gh svg { width: 32px; height: 36px; flex-shrink: 0; } .ms-gh path { fill: rgba(61, 92, 255, .3); stroke: #8ea2ff; stroke-width: 3; }
.lv-on .ms-gh svg { animation: vtPulse 2.6s ease-in-out infinite; }
.ms-gh b { display: block; font-size: 12.5px; } .ms-gh small { font-size: 10px; color: rgba(232, 235, 245, .65); }
.ms-alert { display: flex; align-items: center; gap: 9px; padding: 9px 10px; margin-bottom: 6px; border-radius: 12px; background: #fff; border-left: 3px solid #22b07d; }
.ms-alert--warn { border-left-color: #f5b942; } .ms-alert--crit { border-left-color: #f04438; }
.ms-alert i { width: 8px; height: 8px; border-radius: 50%; background: #22b07d; flex-shrink: 0; } .ms-alert--warn i { background: #f5b942; } .ms-alert--crit i { background: #f04438; }
.ms-alert strong { display: block; font-size: 11.5px; color: #0b0d12; } .ms-alert small { display: block; font-size: 10px; color: #5b6472; }
.lv-on .ms-alert { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.3s + var(--i) * .25s); } .lv-on .ms-alert--crit i { animation: msPulse 1.6s ease-in-out infinite; }
.ms-sec { display: grid; gap: 5px; } .ms-sec span { display: flex; align-items: center; gap: 7px; font-size: 10.5px; color: #0b0d12; } .ms-sec i { width: 7px; height: 7px; border-radius: 50%; background: #22b07d; }
.ms-unlock { position: absolute; z-index: 5; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; background: #0b0d12; color: #e8ebf5; font-size: 11.5px; }
.ms-bio { position: relative; width: 74px; height: 74px; display: grid; place-items: center; border-radius: 50%; border: 2px solid rgba(142, 162, 255, .4); overflow: hidden; }
.ms-bio svg { width: 40px; height: 40px; fill: none; stroke: #8ea2ff; stroke-width: 2.2; stroke-linecap: round; }
.ms-bio i { position: absolute; left: 0; right: 0; height: 2px; top: 0; background: #6fdc9a; box-shadow: 0 0 10px #6fdc9a; }
.lv-on .ms-bio i { animation: msScanY 1.2s ease-in-out 2; }
.lv-on .ms-unlock { animation: msUnlock 9s ease-in-out infinite; }
@keyframes msUnlock { 0%, 22% { opacity: 1; visibility: visible; } 27%, 92% { opacity: 0; visibility: hidden; } 97%, 100% { opacity: 1; visibility: visible; } }
.ms-hid { position: relative; display: block; margin-bottom: 10px; font-size: 22px; color: #0b0d12; font-variant-numeric: tabular-nums; } .ms-hid u { left: 0; right: auto; }
.lv-on .ms-hid em { animation: vtReveal 9s ease-in-out infinite; animation-delay: 1.2s; } .lv-on .ms-hid u { animation: vtReveal2 9s ease-in-out infinite; animation-delay: 1.2s; }
@media (prefers-reduced-motion: reduce) { .ms-unlock { display: none; } }
@media (max-width: 767px) { .dv-fit .vt { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); } }
.vt { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto; height: 100%; align-content: start; }
.vt-side { grid-template-columns: 200px minmax(0, 1fr); align-items: stretch; }
.vt-row { padding: 8px 11px; }

@media (max-width: 767px) { .dv-fit .vt { grid-template-columns: minmax(0, 1fr); } }
.hd-acc { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; margin-top: 12px; }
.hd-acc p { grid-column: 1 / -1; font-size: 10.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: #5b6472; }
.hd-acc span { padding: 8px 9px; border-radius: 10px; background: #fff; border: 1px solid #e6eaf2; } .hd-acc b { display: block; font-size: 10.5px; color: #0b0d12; }
.hd-acc em { display: inline-block; margin-top: 4px; padding: 2px 7px; border-radius: 99px; font-style: normal; font-size: 9.5px; font-weight: 600; }
.hd-acc .g { background: #e8f7f1; color: #0f7a5b; } .hd-acc .a { background: #fff6e9; color: #b45309; } .hd-acc .b { background: #eef1ff; color: #2c48e6; } .hd-acc .r { background: #fdecea; color: #b42318; }
.lv-on .hd-acc span { animation: msIn .5s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(1s + var(--i) * .15s); }
.vt { padding: 12px 25% 12px 14px; gap: 8px; }
.vt-main { gap: 5px; } .vt-head { margin-bottom: 2px; }
.vt-row { padding: 6px 10px; line-height: 1.25; }
.vt-side { grid-template-columns: 170px minmax(0, 1fr); gap: 8px; }
.vt-shield { padding: 9px 10px; } .vt-shield svg { width: 34px; height: 38px; }
.vt-log { padding: 8px 10px; font-size: 9.5px; line-height: 1.55; } 
.hd { padding: 12px 25% 12px 14px; } .hd-acc { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.vt-side { height: 56px; grid-template-columns: 190px minmax(0, 1fr); }
.vt-shield { padding: 8px 10px; gap: 8px; } .vt-shield svg { width: 26px; height: 30px; } .vt-shield b { font-size: 11.5px; white-space: nowrap; } .vt-shield small { font-size: 9.5px; white-space: nowrap; }
.vt-log { height: 56px; overflow: hidden; position: relative; } .vt-log p { position: absolute; left: 10px; right: 10px; top: 8px; opacity: 0; }
.vt-log p:nth-child(even) { top: 26px; }
.lv-on .vt-log p { animation: vtLog 8s ease-in-out infinite; animation-delay: calc(var(--i) * 2s); }
@keyframes vtLog { 0% { opacity: 0; transform: translateY(4px); } 5%, 45% { opacity: 1; transform: none; } 50%, 100% { opacity: 0; } }
.vt-shield p b { display: block; color: #fff; }
.lv-on .vt-log p { animation-delay: calc(var(--i) * 2s - 8s); }

/* ================= JORNADA v2 ================= */
.lc-jflow { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 8px; counter-reset: jf; }
.lc-jflow li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 6px; border-radius: 16px; background: var(--lc-surface); border: 1px solid var(--lc-line); text-align: center; font-size: 13px; font-weight: 500; color: var(--lc-ink); }
.lc-jflow li .lc-i { width: 34px; height: 34px; padding: 8px; border-radius: 11px; background: rgba(61, 92, 255, .1); color: var(--lc-primary); }
.lc-jflow li::after { content: ""; position: absolute; right: -7px; top: 50%; width: 6px; height: 6px; border-top: 1.6px solid var(--lc-line-2); border-right: 1.6px solid var(--lc-line-2); transform: translateY(-50%) rotate(45deg); }
.lc-jflow li:last-child::after { display: none; }
.lc-jflow li { animation: jfGlow 8s ease-in-out infinite; animation-delay: calc(var(--i) * 1s); }
@keyframes jfGlow { 0%, 14%, 100% { border-color: var(--lc-line); box-shadow: none; } 4%, 10% { border-color: rgba(61, 92, 255, .5); box-shadow: 0 12px 26px -16px rgba(61, 92, 255, .6); } }
@media (max-width: 1023px) { .lc-jflow { grid-template-columns: repeat(4, minmax(0, 1fr)); } .lc-jflow li:nth-child(4)::after { display: none; } }
@media (max-width: 480px) { .lc-jflow { grid-template-columns: repeat(2, minmax(0, 1fr)); } .lc-jflow li::after { display: none; } .lc-jflow li { flex-direction: row; justify-content: flex-start; text-align: left; padding: 10px; } }
.lc-jr2 { position: relative; display: grid; gap: clamp(48px, 7vw, 96px); padding-left: 64px; }
.lc-jr2__rail { position: absolute; left: 21px; top: 10px; bottom: 10px; width: 2px; border-radius: 2px; background: var(--lc-line-2); }
.lc-jr2__rail b { position: absolute; left: 0; top: 0; width: 100%; height: calc(var(--p, 0) * 100%); border-radius: 2px; background: linear-gradient(#3d5cff, #22b07d); transition: height .2s linear; }
.lc-jr2__st { position: relative; display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: clamp(24px, 4vw, 64px); align-items: center; }
.lc-jr2__st.is-alt .lc-jr2__txt { order: 2; } .lc-jr2__st.is-alt .lc-jr2__dev { order: 1; }
.lc-jr2__node { position: absolute; left: -64px; top: 6px; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: var(--lc-surface); border: 1px solid var(--lc-line); font-size: 13px; font-weight: 600; color: var(--lc-muted); box-shadow: var(--lc-shadow); transition: all .5s var(--lc-ease); }
.lc-jr2__st.is-on .lc-jr2__node { background: #3d5cff; border-color: #3d5cff; color: #fff; box-shadow: 0 0 0 6px rgba(61, 92, 255, .14); }
.lc-jr2__head { display: flex; align-items: center; gap: 14px; }
.lc-jr2__cols { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 22px; }
.lc-jr2__tech { font-size: 15px; color: var(--lc-text); }
.lc-jr2__svcs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lc-jr2__svc { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 14px; background: var(--lc-surface); border: 1px solid var(--lc-line); font-size: 14px; color: var(--lc-ink); transition: border-color .25s, transform .3s var(--lc-ease); }
.lc-jr2__svc > .lc-i:first-child { color: var(--lc-primary); flex-shrink: 0; } .lc-jr2__svc span { flex: 1; min-width: 0; }
.lc-jr2__go { color: var(--lc-faint); flex-shrink: 0; } .lc-jr2__svc:hover { border-color: rgba(61, 92, 255, .45); transform: translateY(-2px); }
.lc-jr2__dev { max-width: 260px; width: 100%; justify-self: center; position: relative; }
.lc-jr2__dev::before { content: ""; position: absolute; inset: 10% -30% 6%; z-index: -1; background: radial-gradient(50% 50% at 50% 50%, rgba(61, 92, 255, .22), transparent 70%); filter: blur(24px); }
.lc-jr2__end { display: grid; grid-template-columns: minmax(0, 1.4fr) auto; gap: 28px; align-items: center; }
@media (max-width: 1023px) {
  .lc-jr2 { padding-left: 52px; } .lc-jr2__rail { left: 17px; } .lc-jr2__node { left: -52px; width: 36px; height: 36px; border-radius: 11px; font-size: 12px; }
  .lc-jr2__st, .lc-jr2__st.is-alt { grid-template-columns: minmax(0, 1fr); } .lc-jr2__st.is-alt .lc-jr2__txt, .lc-jr2__st.is-alt .lc-jr2__dev { order: 0; }
  .lc-jr2__dev { max-width: 220px; }
  .lc-jr2__end { grid-template-columns: minmax(0, 1fr); text-align: center; } .lc-jr2__end .lc-actions { justify-content: center; }
}
@media (max-width: 640px) { .lc-jr2__cols, .lc-jr2__svcs { grid-template-columns: minmax(0, 1fr); } .lc-jr2 { padding-left: 44px; } .lc-jr2__rail { left: 14px; } .lc-jr2__node { left: -44px; width: 30px; height: 30px; border-radius: 9px; font-size: 11px; } .lc-jr2__head .lc-ico { display: none; } }
@media (prefers-reduced-motion: reduce) { .lc-jflow li { animation: none; } }
.c3-name { display: none; } .c3-cats { display: block; margin-top: 4px; font-size: 10.5px; color: var(--lc-primary-600); font-weight: 500; }
.c3-name.is-swap, .c3-cats.is-swap { animation: c3Swap .5s var(--lc-ease) both; }
.c3-st.is-on .c3-i { transition-delay: .7s; }
@media (max-width: 767px) {
  .lv--c360 { margin: 0 -4px; }
  .c3 { width: 100%; max-width: 420px; }
  .c3-st { gap: 0; } .c3-st b { display: none; }
  .c3-st .c3-i { width: 38px; height: 38px; padding: 9px; border-radius: 12px; }
  .c3-cat { display: none; } .c3-ring--in { display: none; }
  .c3-core { width: 56%; padding: 10px 10px 12px; border-radius: 18px; }
  .c3-thumb { height: 46px; border-radius: 10px; margin-bottom: 6px; }
  .c3-core small { font-size: 10px; }
  .c3-name { display: block; margin-top: 2px; font-size: 15px; font-weight: 600; color: var(--lc-ink); }
  .c3-status { min-height: 2.6em; font-size: 12px; font-weight: 400; color: var(--lc-muted); }
  .c3-cats { font-size: 10.5px; } .c3-step { margin-top: 6px; font-size: 10px; }
}
@media (max-width: 360px) { .c3-st .c3-i { width: 32px; height: 32px; padding: 7px; } .c3-core { width: 58%; } .c3-thumb { display: none; } }
@media (max-width: 767px) {
  .lv--c360 { padding: 24px 8px; margin: 0; }
  .c3-core { width: 50%; padding: 12px 10px; }
  .c3-thumb { display: none; }
  .c3-status { min-height: 0; }
}
@media (max-width: 767px) { .c3 { width: 90%; } }
.lc-svcdev--stage .dv-lbls { margin-top: 26px; } .lc-svcdev--stage .dv-lbl:not(.is-on) { font-size: 0; gap: 0; padding: 6px; }

/* ================= METODOLOGIA v3 (Método LCT 360°) ================= */
/* trilho do método (hero) */
.lv--method { margin: 0; }
.mt { position: relative; overflow: hidden; padding: 26px 24px 20px; border-radius: var(--lc-r-lg); background: radial-gradient(120% 90% at 100% 0%, rgba(61, 92, 255, .45), transparent 60%), #0b0d12; color: #e8ebf5; box-shadow: 0 40px 80px -40px rgba(23, 37, 120, .6); }
.mt::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .05) 1px, transparent 1px); background-size: 28px 28px; -webkit-mask-image: radial-gradient(90% 80% at 70% 20%, #000, transparent 75%); mask-image: radial-gradient(90% 80% at 70% 20%, #000, transparent 75%); }
.mt-k { position: relative; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #9fb0ff; }
.mt-track { position: relative; display: grid; gap: 8px; margin-top: 16px; }
.mt-track::before { content: ""; position: absolute; left: 17px; top: 18px; bottom: 18px; width: 2px; background: rgba(255, 255, 255, .12); }
.mt-pulse { position: absolute; z-index: 1; left: 13px; top: 14px; width: 10px; height: 10px; border-radius: 50%; background: #6fdc9a; box-shadow: 0 0 14px #6fdc9a; }
.lv-on .mt-pulse { animation: mtPulse 9s cubic-bezier(.65, 0, .35, 1) infinite; }
@keyframes mtPulse { 0% { top: 14px; } 92% { top: calc(100% - 24px); opacity: 1; } 100% { top: calc(100% - 24px); opacity: 0; } }
.mt-track li { position: relative; display: grid; grid-template-columns: 36px 1fr; column-gap: 12px; align-items: center; padding: 8px 12px 8px 0; border-radius: 14px; }
.mt-track li span { grid-row: span 2; width: 36px; height: 36px; display: grid; place-items: center; border-radius: 12px; background: #141826; border: 1px solid rgba(255, 255, 255, .1); font-size: 12px; font-weight: 600; color: #9fb0ff; position: relative; z-index: 2; }
.mt-track li b { font-size: 15px; font-weight: 500; color: #fff; } .mt-track li small { font-size: 12px; color: rgba(232, 235, 245, .6); }
.lv-on .mt-track li { animation: mtStep 9s ease-in-out infinite; animation-delay: calc(var(--i) * 1.5s); }
.lv-on .mt-track li span { animation: mtNum 9s ease-in-out infinite; animation-delay: calc(var(--i) * 1.5s); }
@keyframes mtStep { 0%, 18%, 100% { background: transparent; } 3%, 15% { background: rgba(61, 92, 255, .14); } }
@keyframes mtNum { 0%, 18%, 100% { background: #141826; color: #9fb0ff; box-shadow: none; } 3%, 15% { background: #3d5cff; color: #fff; box-shadow: 0 0 0 5px rgba(61, 92, 255, .2); } }
.mt-loop { position: relative; display: flex; align-items: center; gap: 10px; margin-top: 10px; padding-top: 10px; border-top: 1px dashed rgba(255, 255, 255, .12); }
.mt-loop svg { width: 64px; height: 18px; flex-shrink: 0; } .mt-back { fill: none; stroke: #6fdc9a; stroke-width: 2.4; stroke-dasharray: 5 5; } .lv-on .mt-back { animation: lvDash 1.6s linear infinite; }
.mt-loop small { font-size: 12px; color: rgba(232, 235, 245, .7); }
/* princípios */
.lc-mprinc { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.lc-mprinc li { display: flex; gap: 12px; padding: 18px; border-radius: 20px; background: var(--lc-surface); border: 1px solid var(--lc-line); }
.lc-mprinc li > span { flex-shrink: 0; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; background: rgba(61, 92, 255, .1); color: var(--lc-primary-600); font-size: 12.5px; font-weight: 600; }
.lc-mprinc strong { display: block; font-size: 15px; font-weight: 500; color: var(--lc-ink); } .lc-mprinc small { display: block; margin-top: 3px; font-size: 13.5px; color: var(--lc-muted); }
@media (max-width: 1023px) { .lc-mprinc { grid-template-columns: 1fr 1fr; } } @media (max-width: 640px) { .lc-mprinc { grid-template-columns: minmax(0, 1fr); } }
/* painel de fase com componente */
.lc-phvis { position: relative; padding: clamp(16px, 2.4vw, 28px); background: radial-gradient(90% 90% at 100% 0%, rgba(61, 92, 255, .14), transparent 60%), var(--lc-soft); border-bottom: 1px solid var(--lc-line); }
.lc-phvis > .lv { margin: 0; }
.lc-phpanel--v .lc-phpanel__b h3 { margin-top: 4px; }
.lc-phgoal { margin-top: 8px; color: var(--lc-muted); }
.lc-phout2 { margin-top: 18px; padding: 14px 16px; border-radius: 16px; background: rgba(61, 92, 255, .06); border: 1px dashed rgba(61, 92, 255, .35); }
.lc-phout2 ul { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 8px; } .lc-phout2 li { display: inline-flex; align-items: center; gap: 7px; font-size: 14px; color: var(--lc-ink); } .lc-phout2 .lc-i { color: var(--lc-primary); }
.lc-phases--v .lc-phtabs { align-self: start; position: sticky; top: 110px; }
@media (max-width: 1023px) { .lc-phases--v .lc-phtabs { position: static; } }
/* blueprint */
.lv--bp { margin: 0; }
.bp { position: relative; border-radius: 18px; overflow: hidden; background: #0d2a6b; box-shadow: 0 30px 60px -36px rgba(13, 42, 107, .8); }
.bp-svg { display: block; width: 100%; height: auto; }
.bp-grid { stroke: rgba(255, 255, 255, .07); stroke-width: 1; }
.bp-dim path { stroke: rgba(185, 210, 255, .5); stroke-width: 1; fill: none; } .bp-dim text { fill: rgba(185, 210, 255, .7); font: 10px ui-monospace, Menlo, monospace; text-anchor: middle; }
.bp-l { fill: none; stroke: rgba(185, 210, 255, .55); stroke-width: 1.4; stroke-dasharray: 1; stroke-dashoffset: 1; }
.lv-on .bp-l { animation: bpDraw 2.4s cubic-bezier(.65, 0, .35, 1) 1.2s forwards; }
.bp-m rect { fill: rgba(255, 255, 255, .04); stroke: #cfe0ff; stroke-width: 1.4; stroke-dasharray: 1; stroke-dashoffset: 1; }
.bp-m text { fill: #e8f0ff; font: 500 12px Inter Tight, system-ui, sans-serif; text-anchor: middle; opacity: 0; }
.lv-on .bp-m rect { animation: bpDraw 1s cubic-bezier(.65, 0, .35, 1) forwards; animation-delay: calc(var(--i) * .14s); }
.lv-on .bp-m text { animation: bpTxt .5s ease forwards; animation-delay: calc(.6s + var(--i) * .14s); }
.bp-core rect { fill: rgba(111, 220, 154, .12); stroke: #6fdc9a; } .bp-core text { fill: #b8f2d2; font-weight: 600; }
@keyframes bpDraw { to { stroke-dashoffset: 0; } } @keyframes bpTxt { to { opacity: 1; } }
.bp .lv-pk { fill: #6fdc9a; filter: drop-shadow(0 0 4px #6fdc9a); }
.bp-stamp { position: absolute; right: 12px; bottom: 12px; padding: 8px 12px; border-radius: 10px; border: 1px solid rgba(185, 210, 255, .4); background: rgba(13, 42, 107, .85); color: #e8f0ff; }
.bp-stamp b { display: block; font-size: 12px; } .bp-stamp small { font-size: 10px; color: rgba(232, 240, 255, .7); }
/* imersão */
.im { padding: 14px; display: grid; gap: 10px; }
.im-lane { display: grid; grid-template-columns: 82px minmax(0, 1fr); align-items: center; gap: 10px; }
.im-who { font-size: 11.5px; font-weight: 600; color: #3c4350; padding: 6px 8px; border-radius: 8px; background: #eef1f6; text-align: center; }
.im-steps { display: flex; align-items: center; gap: 0; }
.im-steps em { flex: 0 0 14px; height: 2px; background: #d7dde5; }
.im-step { position: relative; flex: 1 1 0; min-width: 0; padding: 8px 9px; border-radius: 10px; background: #fff; border: 1px solid #e3e8f0; font-size: 10.5px; line-height: 1.3; color: #0b0d12; }
.im-step i { position: absolute; right: -4px; top: -4px; width: 10px; height: 10px; border-radius: 50%; background: #f04438; box-shadow: 0 0 0 3px rgba(240, 68, 56, .18); transform: scale(0); }
.lv-on .im-step { animation: msIn .45s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.1s + var(--i) * .12s); }
.lv-on .im-step.is-pain { animation: msIn .45s cubic-bezier(.2, .8, .2, 1) both, imPain 3s ease-in-out infinite; animation-delay: calc(.1s + var(--i) * .12s), calc(1.4s + var(--i) * .15s); }
.lv-on .im-step i { animation: imDot .4s cubic-bezier(.2, .8, .2, 1) forwards; animation-delay: calc(1.3s + var(--i) * .15s); }
@keyframes imDot { to { transform: scale(1); } } @keyframes imPain { 50% { border-color: rgba(240, 68, 56, .45); background: #fff8f7; } }
.im-sum { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 4px; } .im-sum span { padding: 9px 10px; border-radius: 10px; background: #0b0d12; color: rgba(232, 235, 245, .8); font-size: 10.5px; } .im-sum b { display: block; font-size: 18px; color: #fff; font-variant-numeric: tabular-nums; }
@media (max-width: 640px) { .im-lane { grid-template-columns: 1fr; gap: 6px; } .im-who { justify-self: start; } .im-step { font-size: 9.5px; padding: 6px; } .im-sum b { font-size: 15px; } }
/* prova de valor */
.lv--proto { margin: 0; }
.pr { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 22px; align-items: center; }
.pr-ph { position: relative; }
.pr-layer { position: absolute; inset: 0; }
.pr-layer--ui { opacity: 0; } .lv-on .pr-layer--ui { animation: prUI 8s ease-in-out infinite; }
@keyframes prUI { 0%, 30% { opacity: 0; filter: blur(4px); } 42%, 92% { opacity: 1; filter: none; } 100% { opacity: 0; } }
.pr-wf { position: absolute; inset: 0; padding: 44px 14px 14px; background: #f2f5fa; display: flex; flex-direction: column; gap: 9px; }
.pr-wf i { display: block; height: 10px; width: 70%; border-radius: 4px; background: #d7dde5; } .pr-wf i.h { height: 16px; width: 55%; } .pr-wf i.b { height: 44px; width: 100%; border-radius: 12px; background: #e3e8f0; border: 1.5px dashed #c3cbd8; } .pr-wf i.btn { height: 34px; width: 100%; margin-top: auto; border-radius: 12px; background: #c3cbd8; }
.pr-tap { position: absolute; z-index: 6; left: 58%; top: 46%; width: 26px; height: 26px; border-radius: 50%; background: rgba(61, 92, 255, .25); border: 2px solid #3d5cff; opacity: 0; }
.lv-on .pr-tap { animation: prTap 8s ease-in-out infinite; } @keyframes prTap { 0%, 14% { opacity: 0; transform: translate(30px, 40px) scale(1); } 22% { opacity: 1; transform: none scale(1); } 27% { transform: scale(.7); } 32% { opacity: 1; transform: scale(1.3); } 38%, 100% { opacity: 0; } }
.pr-notes { display: grid; gap: 10px; }
.pr-notes p { padding: 14px 16px; border-radius: 16px; background: var(--lc-surface); border: 1px solid var(--lc-line); box-shadow: var(--lc-shadow); }
.pr-notes b { display: block; font-size: 14.5px; font-weight: 500; color: var(--lc-ink); } .pr-notes small { font-size: 12.5px; color: var(--lc-muted); }
.lv-on .pr-notes p { animation: msIn .6s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.8s + var(--i) * .5s); }
.pr-notes p:nth-child(2) { border-left: 3px solid #f5b942; } .pr-notes p:nth-child(3) { border-left: 3px solid #22b07d; }
@media (max-width: 640px) { .pr { grid-template-columns: 150px minmax(0, 1fr); gap: 12px; } .pr-notes p { padding: 10px 12px; } .pr-notes b { font-size: 12.5px; } .pr-notes small { font-size: 11px; } }
/* implantação */
.gl { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 12px; padding: 14px; }
.gl p { font-size: 10.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: #5b6472; margin-bottom: 8px; }
.gl-mig { padding: 12px; border-radius: 14px; background: #fff; border: 1px solid #e6eaf2; }
.gl-row { display: grid; grid-template-columns: 76px 1fr 54px; align-items: center; gap: 8px; padding: 6px 0; font-size: 11.5px; color: #3c4350; }
.gl-row em { height: 6px; border-radius: 6px; background: #eef1f6; overflow: hidden; } .gl-row em i { display: block; height: 100%; width: 100%; border-radius: 6px; background: linear-gradient(90deg, #3d5cff, #22b07d); transform-origin: left; }
.lv-on .gl-row em i { animation: dvBar 1.8s cubic-bezier(.4, 0, .2, 1) both; animation-delay: calc(.3s + var(--i) * .35s); }
.gl-row b { text-align: right; font-size: 11.5px; color: #0b0d12; font-variant-numeric: tabular-nums; }
.gl-side { display: grid; gap: 10px; align-content: start; }
.gl-tr { padding: 12px; border-radius: 14px; background: #fff; border: 1px solid #e6eaf2; }
.gl-tr span { display: flex; align-items: center; gap: 8px; padding: 4px 0; font-size: 11.5px; color: #0b0d12; }
.gl-tr span i { position: relative; width: 15px; height: 15px; border-radius: 5px; border: 2px solid #d7dde5; }
.gl-tr span i::after { content: ""; position: absolute; left: 3px; top: 0; width: 4px; height: 7px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg) scale(0); }
.lv-on .gl-tr span i { animation: msChk .4s ease both; animation-delay: calc(1.6s + var(--i) * .35s); } .lv-on .gl-tr span i::after { animation: msChk2 .4s ease both; animation-delay: calc(1.6s + var(--i) * .35s); }
.gl-go { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 14px; border-radius: 14px; background: #0b0d12; color: #fff; text-align: center; }
.gl-go i { width: 12px; height: 12px; border-radius: 50%; background: #22b07d; box-shadow: 0 0 0 0 rgba(34, 176, 125, .6); margin-bottom: 4px; }
.lv-on .gl-go i { animation: lcPulse 1.8s ease-out 3.2s infinite; } .gl-go b { font-size: 15px; } .gl-go small { font-size: 10.5px; color: rgba(232, 235, 245, .65); }
.lv-on .gl-go { animation: msIn .6s cubic-bezier(.2, .8, .2, 1) 3s both; }
@media (max-width: 640px) { .gl { grid-template-columns: minmax(0, 1fr); } }
/* evolução */
.ad { padding: 16px; }
.ad-rings { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.ad-r { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 12px 8px; border-radius: 14px; background: #fff; border: 1px solid #e6eaf2; text-align: center; }
.ad-r svg { width: 64px; height: 64px; transform: rotate(-90deg); } .ad-r circle { fill: none; stroke-width: 5; } .ad-r .bg { stroke: #eef1f6; } .ad-r .fg { stroke: #3d5cff; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: calc(100 - var(--v)); }
.ad-r:nth-child(2) .fg { stroke: #22b07d; } .ad-r:nth-child(3) .fg { stroke: #7a5cff; }
.lv-on .ad-r .fg { animation: msRing 1.8s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(.3s + var(--i) * .25s); }
.ad-r b { font-size: 11px; font-weight: 500; color: #0b0d12; line-height: 1.3; }
.ad-road { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin-top: 14px; }
.ad-road span { padding: 10px; border-radius: 12px; background: #f6f8fc; border: 1px solid #e6eaf2; font-size: 11px; color: #3c4350; }
.ad-road b { display: block; font-size: 10px; letter-spacing: .08em; color: #8a93a2; }
.lv-on .ad-road span { animation: adQ 8s ease-in-out infinite; animation-delay: calc(var(--i) * 2s); }
@keyframes adQ { 0%, 22%, 100% { background: #f6f8fc; border-color: #e6eaf2; } 3%, 19% { background: #eef1ff; border-color: #9fb0ff; } }
.ad-note { margin-top: 10px; font-size: 10px; color: #646c7a; }
@media (max-width: 640px) { .ad-road { grid-template-columns: 1fr 1fr; } .ad-r svg { width: 48px; height: 48px; } }
/* pilares */
.lc-mpils { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.lc-mpil { padding: 22px 20px; border-radius: 22px; background: var(--lc-surface); border: 1px solid var(--lc-line); transition: transform .4s var(--lc-ease), box-shadow .4s; }
.lc-mpil:hover { transform: translateY(-4px); box-shadow: var(--lc-shadow-lg); }
.lc-mpil h3 { margin-top: 14px; font-size: 16px; font-weight: 500; color: var(--lc-ink); } .lc-mpil p { margin-top: 6px; font-size: 14px; color: var(--lc-muted); }
@media (max-width: 1023px) { .lc-mpils { grid-template-columns: 1fr 1fr; } } @media (max-width: 560px) { .lc-mpils { grid-template-columns: minmax(0, 1fr); } }
/* áreas */
.lc-atabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-bottom: 18px; }
.lc-atab { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 999px; border: 1px solid var(--lc-line); background: var(--lc-surface); font-size: 14px; color: var(--lc-text); cursor: pointer; transition: all .25s; }
.lc-atab .lc-i { color: var(--lc-primary); }
.lc-atab[aria-selected="true"] { background: #3d5cff; border-color: #3d5cff; color: #fff; box-shadow: 0 12px 26px -14px rgba(61, 92, 255, .8); } .lc-atab[aria-selected="true"] .lc-i { color: #fff; }
.lc-apanel { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; animation: c3Swap .5s var(--lc-ease) both; }
.lc-apanel[hidden] { display: none; }
.lc-apanel__c { padding: 22px; border-radius: 22px; background: var(--lc-surface); border: 1px solid var(--lc-line); }
.lc-apanel__c > p:not(.lc-kicker) { margin-top: 8px; color: var(--lc-text); }
.lc-apanel__c--hi { background: radial-gradient(120% 100% at 100% 0%, rgba(61, 92, 255, .45), transparent 60%), #0b0d12; border-color: transparent; }
.lc-apanel__c--hi .lc-kicker { color: #9fb0ff; } .lc-apanel__c--hi > p:not(.lc-kicker) { color: #fff; font-size: 17px; }
.lc-apanel__c ul { display: grid; gap: 8px; margin-top: 10px; } .lc-apanel__c li { display: flex; gap: 8px; font-size: 14.5px; color: var(--lc-ink); }
@media (max-width: 1023px) { .lc-apanel { grid-template-columns: minmax(0, 1fr); } .lc-atabs { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; margin: 0 -16px 16px; padding: 2px 16px 6px; scrollbar-width: none; } .lc-atab { flex-shrink: 0; } }
/* ritmo */
.lc-rh { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: clamp(24px, 4vw, 56px); align-items: center; }
.lc-rh__line { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.lc-rh__line::before { content: ""; position: absolute; left: 6px; right: 6px; top: 6px; height: 2px; background: rgba(255, 255, 255, .14); }
.lc-rh__line::after { content: ""; position: absolute; left: 6px; right: 6px; top: 6px; height: 2px; background: linear-gradient(90deg, #8ea2ff, #6fdc9a); transform: scaleX(0); transform-origin: left; transition: transform 2.2s cubic-bezier(.65, 0, .35, 1); }
.lc-rh__line.is-in::after { transform: scaleX(1); }
.lc-rh__line li { position: relative; padding-top: 26px; } .lc-rh__dot { position: absolute; left: 0; top: 0; width: 14px; height: 14px; border-radius: 50%; background: #0b0d12; border: 2px solid rgba(255, 255, 255, .3); transition: all .4s; transition-delay: calc(var(--i) * .5s); }
.lc-rh__line.is-in .lc-rh__dot { background: #6fdc9a; border-color: #6fdc9a; box-shadow: 0 0 0 5px rgba(111, 220, 154, .18); }
.lc-rh__line strong { display: block; font-size: 16px; font-weight: 500; color: #fff; } .lc-rh__line small { display: block; margin-top: 4px; font-size: 13.5px; color: rgba(232, 235, 245, .7); }
@media (max-width: 1023px) { .lc-rh { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) { .lc-rh__line { grid-template-columns: minmax(0, 1fr); gap: 16px; padding-left: 26px; } .lc-rh__line::before, .lc-rh__line::after { left: 6px; right: auto; top: 6px; bottom: 6px; width: 2px; height: auto; } .lc-rh__line::after { transform: scaleY(0); transform-origin: top; } .lc-rh__line.is-in::after { transform: scaleY(1); } .lc-rh__line li { padding-top: 0; } .lc-rh__dot { left: -26px; } }
@media (prefers-reduced-motion: reduce) { .mt *, .bp *, .im *, .pr *, .gl *, .ad * { animation: none !important; } .bp-l, .bp-m rect { stroke-dashoffset: 0; } .bp-m text { opacity: 1; } .pr-layer--ui { opacity: 1; } }
.lc-dl { position: relative; width: 16px; height: 18px; flex-shrink: 0; border-radius: 3px; border: 1.6px solid var(--lc-primary); } .lc-dl::after { content: ""; position: absolute; left: 3px; right: 3px; top: 4px; height: 6px; border-top: 1.6px solid var(--lc-primary); border-bottom: 1.6px solid var(--lc-primary); }
.bp-stamp { top: 10px; bottom: auto; padding: 6px 10px; } .bp-dim text { text-anchor: start; } 

/* ================= HOME v3: IA, jornada e método ================= */
.lc-ai2__grid { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
.lc-ai2__lead { max-width: 46ch; color: rgba(232, 235, 245, .75); }
.lc-aichips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 26px; }
.lc-aichip { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border-radius: 999px; background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1); font-size: 13.5px; color: #e8ebf5; transition: background .25s, border-color .25s; }
.lc-aichip .lc-i { color: #8ea2ff; } .lc-aichip:hover { background: rgba(61, 92, 255, .2); border-color: rgba(142, 162, 255, .5); }
.lc-aigov { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 22px; font-size: 13px; color: rgba(232, 235, 245, .7); }
.lc-aigov span { display: inline-flex; align-items: center; gap: 8px; } .lc-aigov i { width: 7px; height: 7px; border-radius: 50%; background: #6fdc9a; box-shadow: 0 0 8px rgba(111, 220, 154, .8); }
.lc-ains { position: relative; display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 22px; align-items: center; }
.lc-ains__ph .dv-phone__body { box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .9), 0 0 0 1px rgba(255, 255, 255, .08); }
.lc-ains__flow { position: relative; display: grid; gap: 12px; padding-left: 18px; }
.lc-ains__flow::before { content: ""; position: absolute; left: 0; top: 46px; bottom: 26px; width: 2px; background: repeating-linear-gradient(rgba(142, 162, 255, .5) 0 5px, transparent 5px 10px); }
.lc-ains__core { display: inline-flex; align-items: center; gap: 8px; justify-self: start; padding: 7px 14px 7px 8px; border-radius: 999px; background: linear-gradient(135deg, #3d5cff, #7a5cff); color: #fff; font-size: 13px; font-weight: 600; box-shadow: 0 0 0 6px rgba(61, 92, 255, .18), 0 14px 30px -12px rgba(61, 92, 255, .9); }
.lc-ains__core i { width: 18px; height: 18px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #fff, #b9c6ff 40%, transparent 70%); animation: aiOrb 2.4s ease-in-out infinite; }
@keyframes aiOrb { 50% { transform: scale(1.25); filter: drop-shadow(0 0 6px #fff); } }
.lc-ains__c { position: relative; display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; border-radius: 16px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .1); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); animation: aiCard 9s cubic-bezier(.2, .8, .2, 1) infinite; animation-delay: calc(1s + var(--i) * 1.6s); opacity: .35; }
.lc-ains__c::before { content: ""; position: absolute; left: -24px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: #0b0d12; border: 2px solid rgba(142, 162, 255, .6); }
@keyframes aiCard { 0% { opacity: .35; transform: translateX(10px); } 6%, 80% { opacity: 1; transform: none; border-color: rgba(142, 162, 255, .45); box-shadow: 0 16px 34px -20px rgba(61, 92, 255, .9); } 90%, 100% { opacity: .35; transform: none; } }
.lc-ains__n { flex-shrink: 0; width: 26px; height: 26px; display: grid; place-items: center; border-radius: 8px; background: rgba(61, 92, 255, .25); color: #b9c6ff; font-size: 12px; font-weight: 600; }
.lc-ains__c b { display: block; font-size: 14.5px; font-weight: 500; color: #fff; } .lc-ains__c small { display: block; margin-top: 2px; font-size: 13px; color: rgba(232, 235, 245, .7); }
@media (max-width: 1023px) { .lc-ai2__grid { grid-template-columns: minmax(0, 1fr); } .lc-ai2__grid > div:first-child { text-align: center; } .lc-aichips, .lc-aigov { justify-content: center; } .lc-ai2__lead { margin-inline: auto; } }
@media (max-width: 640px) { .lc-ains { grid-template-columns: 130px minmax(0, 1fr); gap: 12px; } .lc-ains__c { padding: 10px 12px; } .lc-ains__c b { font-size: 13px; } .lc-ains__c small { font-size: 11.5px; } .lc-ains__n { display: none; } }
@media (prefers-reduced-motion: reduce) { .lc-ains__c { animation: none; opacity: 1; } .lc-ains__core i { animation: none; } }
/* jornada compacta */
.lc-jms { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.lc-jms__line { position: absolute; left: 4%; right: 4%; top: 50%; height: 2px; background: var(--lc-line); z-index: 0; }
.lc-jms__line b { position: absolute; top: -2px; left: 0; width: 18%; height: 6px; border-radius: 6px; background: linear-gradient(90deg, transparent, #3d5cff, transparent); animation: jmRun 6s linear infinite; }
@keyframes jmRun { from { left: -18%; } to { left: 100%; } }
.lc-jm { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 6px; padding: 20px; border-radius: 22px; background: var(--lc-surface); border: 1px solid var(--lc-line); transition: transform .4s var(--lc-ease), box-shadow .4s, border-color .3s; animation: jmLit 8s ease-in-out infinite; animation-delay: calc(var(--i) * 1s); }
.lc-jm:hover { transform: translateY(-4px); box-shadow: var(--lc-shadow-lg); border-color: rgba(61, 92, 255, .4); }
@keyframes jmLit { 0%, 14%, 100% { border-color: var(--lc-line); } 4%, 10% { border-color: rgba(61, 92, 255, .55); box-shadow: 0 16px 34px -22px rgba(61, 92, 255, .8); } }
.lc-jm__n { position: absolute; right: 18px; top: 16px; font-size: 12px; font-weight: 600; color: var(--lc-faint); font-variant-numeric: tabular-nums; }
.lc-jm__ic { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; background: rgba(61, 92, 255, .1); color: var(--lc-primary); margin-bottom: 6px; }
.lc-jm strong { font-size: 16.5px; font-weight: 500; color: var(--lc-ink); } .lc-jm small { font-size: 14px; line-height: 1.45; color: var(--lc-muted); }
@media (max-width: 1023px) { .lc-jms { grid-template-columns: 1fr 1fr; } .lc-jms__line { display: none; } }
@media (max-width: 480px) { .lc-jm { padding: 16px; } .lc-jm strong { font-size: 15px; } .lc-jm small { font-size: 13px; } }
@media (prefers-reduced-motion: reduce) { .lc-jm, .lc-jms__line b { animation: none; } }
/* método compacto */
.lc-ms { background: radial-gradient(70% 120% at 100% 0%, rgba(61, 92, 255, .4), transparent 60%), #0b0d12; }
.lc-ms__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px; }
.lc-ms__head h2 { max-width: 20ch; }
.lc-ms__track { position: relative; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin-top: clamp(32px, 4vw, 48px); }
.lc-ms__bar { position: absolute; left: 18px; right: 18px; top: 18px; height: 2px; background: rgba(255, 255, 255, .12); }
.lc-ms__bar b { position: absolute; left: 0; top: 0; height: 100%; width: 0; background: linear-gradient(90deg, #8ea2ff, #6fdc9a); animation: msBar 9s cubic-bezier(.65, 0, .35, 1) infinite; }
@keyframes msBar { 0% { width: 0; } 90% { width: 100%; opacity: 1; } 100% { width: 100%; opacity: 0; } }
.lc-ms__track li { position: relative; display: flex; flex-direction: column; gap: 6px; }
.lc-ms__dot { position: relative; z-index: 1; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: #141826; border: 1px solid rgba(255, 255, 255, .12); font-size: 12px; font-weight: 600; color: #9fb0ff; margin-bottom: 8px; animation: msDot 9s ease-in-out infinite; animation-delay: calc(var(--i) * 1.45s); }
@keyframes msDot { 0%, 16%, 100% { background: #141826; color: #9fb0ff; box-shadow: none; } 3%, 13% { background: #3d5cff; color: #fff; box-shadow: 0 0 0 6px rgba(61, 92, 255, .22); } }
.lc-ms__track strong { font-size: 16px; font-weight: 500; color: #fff; } .lc-ms__track small { font-size: 13px; color: rgba(232, 235, 245, .62); }
@media (max-width: 1023px) { .lc-ms__track { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 24px; } .lc-ms__bar { display: none; } }
@media (max-width: 560px) { .lc-ms__track { grid-template-columns: 1fr 1fr; } .lc-ms__head { flex-direction: column; align-items: flex-start; } }
@media (prefers-reduced-motion: reduce) { .lc-ms__dot, .lc-ms__bar b { animation: none; } }
/* rodapé: assinatura à esquerda, informações à direita */
@media (min-width: 768px) {
  .lc-footer--v3 .lc-footer__bottom { display: flex; justify-content: space-between; align-items: center; }
  .lc-footer--v3 .lc-footer__bottom > span[aria-hidden] { display: none; }
  .lc-footer--v3 .lc-footer__sig { order: -1; }
  .lc-footer--v3 .lc-footer__meta { justify-content: flex-end; }
}
.lc-ms__head h2 { max-width: 24ch; }
/* marca LCTX */
.brand-logo { display: block; height: 36px; width: auto; color: var(--lc-ink); overflow: visible; }
.brand-logo__t { font-family: "Inter Tight", Inter, system-ui, sans-serif; font-size: 23px; font-weight: 600; letter-spacing: -.02em; fill: currentColor; }
.brand-logo__node { transform-origin: 18px 12.8px; animation: lctxNode 3.2s ease-in-out infinite; }
@keyframes lctxNode { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.35); filter: drop-shadow(0 0 3px #6fdc9a); } }
.brand-link:hover .brand-logo__x { stroke: #6fdc9a; transition: stroke .3s; }
.lc-nav__brand .brand-logo { height: 34px; }
@media (max-width: 374px) { .brand-logo { height: 32px; } }
[data-theme="dark"] .brand-logo { filter: none !important; color: #f2f4f9; }
@media (prefers-reduced-motion: reduce) { .brand-logo__node { animation: none; } }
/* marca LCTX v2: só tipografia, X contornado */
.brand-logo { height: 30px; }
.brand-logo__t { font-family: "Inter Tight", Inter, system-ui, sans-serif; font-size: 27px; font-weight: 700; letter-spacing: -.01em; fill: currentColor; }
.brand-logo__x { fill: transparent; stroke: currentColor; stroke-width: 1.4px; paint-order: stroke; }
.brand-link:hover .brand-logo__x { stroke: currentColor; fill: transparent; }
.lc-nav__brand .brand-logo { height: 28px; }
@media (max-width: 374px) { .brand-logo { height: 26px; } }
/* LCTX v3: LC sólido, TX só contorno fino */
.brand-logo__t { font-weight: 600; font-size: 26px; letter-spacing: .015em; }
.brand-logo__x { fill: transparent; stroke: currentColor; stroke-width: .75px; paint-order: normal; }

/* ================= HOME: IA v3 (limpa) ================= */
.lc-ai3 { position: relative; overflow: hidden; background: #0b0d12; }
.lc-ai3__glow { position: absolute; right: -10%; top: -30%; width: 60%; height: 120%; background: radial-gradient(50% 50% at 50% 50%, rgba(61, 92, 255, .28), transparent 70%); pointer-events: none; }
.lc-ai3__grid { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.lc-ai3 .lc-h2 { max-width: 16ch; }
.lc-ai3__lead { margin-top: 16px; max-width: 42ch; font-size: 16.5px; color: rgba(232, 235, 245, .66); }
.lc-ai3__list { display: grid; grid-template-columns: 1fr 1fr; column-gap: 28px; margin-top: 30px; border-top: 1px solid rgba(255, 255, 255, .08); }
.lc-ai3__row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 13px 0; border-bottom: 1px solid rgba(255, 255, 255, .08); font-size: 14.5px; color: rgba(232, 235, 245, .88); transition: color .25s, padding .3s var(--lc-ease); }
.lc-ai3__row .lc-i { flex-shrink: 0; color: rgba(232, 235, 245, .35); transition: color .25s, transform .3s var(--lc-ease); }
.lc-ai3__row:hover { color: #fff; padding-left: 4px; } .lc-ai3__row:hover .lc-i { color: #8ea2ff; transform: translate(2px, -2px); }
.lc-ai3__gov { display: flex; flex-wrap: wrap; gap: 6px 0; margin-top: 18px; font-size: 12.5px; color: rgba(232, 235, 245, .5); }
.lc-ai3__gov span + span::before { content: "·"; margin: 0 10px; color: rgba(232, 235, 245, .3); }
.lc-ai3__vis { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 34px; align-items: center; }
.lc-ai3__ph .dv-phone__body { box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .9), 0 0 0 1px rgba(255, 255, 255, .08); }
.lc-ai3__steps { position: relative; display: grid; gap: 26px; padding-left: 22px; }
.lc-ai3__steps::before { content: ""; position: absolute; left: 3px; top: 6px; bottom: 6px; width: 1px; background: rgba(255, 255, 255, .14); }
.lc-ai3__steps li { position: relative; display: grid; gap: 3px; opacity: .4; animation: ai3Step 9s ease-in-out infinite; animation-delay: calc(1s + var(--i) * 1.8s); }
.lc-ai3__steps i { position: absolute; left: -22px; top: 5px; width: 7px; height: 7px; border-radius: 50%; background: #0b0d12; border: 1px solid rgba(255, 255, 255, .4); transition: all .4s; }
.lc-ai3__steps small { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: #8ea2ff; }
.lc-ai3__steps b { font-size: 15px; font-weight: 400; line-height: 1.4; color: #fff; }
@keyframes ai3Step { 0% { opacity: .4; } 6%, 78% { opacity: 1; } 88%, 100% { opacity: .4; } }
.lc-ai3__steps li { --on: 0; } .lc-ai3__steps li i { animation: ai3Dot 9s ease-in-out infinite; animation-delay: calc(1s + var(--i) * 1.8s); }
@keyframes ai3Dot { 0%, 88%, 100% { background: #0b0d12; border-color: rgba(255, 255, 255, .4); box-shadow: none; } 6%, 78% { background: #6fdc9a; border-color: #6fdc9a; box-shadow: 0 0 0 4px rgba(111, 220, 154, .15); } }
@media (max-width: 1023px) { .lc-ai3__grid { grid-template-columns: minmax(0, 1fr); } .lc-ai3__vis { max-width: 560px; } }
@media (max-width: 640px) { .lc-ai3__list { grid-template-columns: minmax(0, 1fr); } .lc-ai3__vis { grid-template-columns: 140px minmax(0, 1fr); gap: 20px; } .lc-ai3__steps { gap: 18px; } .lc-ai3__steps b { font-size: 13px; } }
@media (prefers-reduced-motion: reduce) { .lc-ai3__steps li, .lc-ai3__steps i { animation: none; opacity: 1; } }
.lc-ai3 .lc-h2 { max-width: 19ch; }

/* ================= /link v6 — clean white glass ================= */
.lk.gx { background: #f6f7fb; color: #0b0d12; overflow: hidden; }
.gx-bg { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.gx-bg i { position: absolute; width: 60vmax; height: 60vmax; border-radius: 50%; filter: blur(90px); opacity: .45; animation: gxBlob 20s ease-in-out infinite alternate; }
.gx-bg i:nth-child(1) { background: radial-gradient(circle, #c9d3ff, transparent 65%); left: -28vmax; top: -32vmax; }
.gx-bg i:nth-child(2) { background: radial-gradient(circle, #e1dcff, transparent 65%); right: -32vmax; top: 18vmax; animation-delay: -7s; }
.gx-bg i:nth-child(3) { background: radial-gradient(circle, #d6f3ea, transparent 65%); left: -8vmax; bottom: -42vmax; opacity: .4; animation-delay: -12s; }
.gx-bg b { position: absolute; inset: 0; background-image: linear-gradient(rgba(11, 13, 18, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(11, 13, 18, .035) 1px, transparent 1px); background-size: 40px 40px; -webkit-mask-image: radial-gradient(70% 55% at 50% 25%, #000, transparent 80%); mask-image: radial-gradient(70% 55% at 50% 25%, #000, transparent 80%); }
@keyframes gxBlob { to { transform: translate(5vmax, 7vmax) scale(1.06); } }
.gx .lk-sig { filter: none; width: 250px; }
.gx .lk-bio { color: #4a5163; max-width: 330px; margin-left: auto; margin-right: auto; line-height: 1.5; }
.gx .lk-bio b { display: block; color: #0b0d12; font-weight: 500; }
/* cards de vidro claro */
.gx .lk-card { background: rgba(255, 255, 255, .62); border: 1px solid rgba(255, 255, 255, .9); -webkit-backdrop-filter: blur(20px) saturate(170%); backdrop-filter: blur(20px) saturate(170%); box-shadow: 0 1px 0 rgba(255, 255, 255, .9) inset, 0 0 0 1px rgba(11, 13, 18, .05), 0 18px 40px -28px rgba(20, 30, 70, .35); color: #0b0d12; }
.gx .lk-card::before { content: none; }
.gx .lk-card.is-open, .gx .lk-card:focus-visible { background: rgba(255, 255, 255, .82); box-shadow: 0 1px 0 #fff inset, 0 0 0 1px rgba(61, 92, 255, .22), 0 28px 50px -30px rgba(61, 92, 255, .45); transform: scale(1.015); }
@media (hover: hover) { .gx .lk-card:hover { background: rgba(255, 255, 255, .82); box-shadow: 0 1px 0 #fff inset, 0 0 0 1px rgba(61, 92, 255, .22), 0 28px 50px -30px rgba(61, 92, 255, .45); transform: scale(1.015); } }
.gx .lk-txt strong { color: #0b0d12; } .gx .lk-txt small { color: #5a6275; }
.gx-icw { position: relative; flex: 0 0 52px; width: 52px; height: 52px; display: grid; place-items: center; border-radius: 16px; background: linear-gradient(180deg, #fff, #f1f3f9); border: 1px solid rgba(11, 13, 18, .07); box-shadow: 0 1px 0 #fff inset, 0 6px 14px -10px rgba(20, 30, 70, .4); }
.gx-ic { width: 30px; height: 30px; fill: none; stroke: #0b0d12; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; overflow: visible; }
.gx-ic .gx-dim { stroke: rgba(11, 13, 18, .22); } .gx-ic .gx-fill { fill: #3d5cff; stroke: none; }
.gx-ic .gx-beat { transform-box: fill-box; transform-origin: center; animation: gxBeat 2.4s ease-in-out infinite; } @keyframes gxBeat { 50% { transform: scale(1.5); opacity: .6; } }
.gx-ic .gx-draw { stroke-dasharray: 40; stroke-dashoffset: 40; animation: gxDraw 3.2s ease-in-out infinite; } @keyframes gxDraw { 0% { stroke-dashoffset: 40; } 45%, 85% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: -40; } }
.gx-ic .gx-door { fill: rgba(61, 92, 255, 0); stroke: #0b0d12; animation: gxDoor 3s ease-in-out infinite; } @keyframes gxDoor { 50% { fill: rgba(61, 92, 255, .9); stroke: #3d5cff; } }
.gx-ic .gx-key { transform-origin: 17px 24px; animation: gxKey 3.4s ease-in-out infinite; } @keyframes gxKey { 0%, 60%, 100% { transform: none; } 70% { transform: rotate(-14deg); } 82% { transform: rotate(6deg); } }
.gx-ic .gx-pins { stroke: rgba(11, 13, 18, .4); }
.gx-go { position: relative; flex: 0 0 34px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: #fff; border: 1px solid rgba(11, 13, 18, .08); color: #0b0d12; transition: background .3s, color .3s, transform .3s; }
.gx .lk-card:hover .gx-go, .gx .lk-card.is-open .gx-go { background: #0b0d12; border-color: #0b0d12; color: #fff; transform: rotate(-8deg); }
/* área expandida */
.gx .lk-xp__in { position: relative; }
.gx-xp { position: relative; display: block; padding: 14px; border-radius: 18px; background: rgba(246, 247, 251, .8); border: 1px solid rgba(11, 13, 18, .06); overflow: hidden; }
.gx-xpbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; font-size: 12.5px; color: #5a6275; }
.gx-cta { padding: 6px 14px; border-radius: 999px; background: #0b0d12; color: #fff; font-size: 12px; font-weight: 500; }
/* tech */
.gx-hub { position: relative; display: block; height: 110px; }
.gx-hub__l { position: absolute; inset: 0; width: 100%; height: 100%; } .gx-hub__l path { fill: none; stroke: rgba(61, 92, 255, .35); stroke-width: 1.2; stroke-dasharray: 3 4; vector-effect: non-scaling-stroke; } .gx-hub__l circle { fill: #3d5cff; }
.gx-hub b { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); padding: 7px 12px; border-radius: 12px; background: #0b0d12; color: #fff; font-size: 12px; font-weight: 500; letter-spacing: .08em; box-shadow: 0 8px 20px -10px rgba(11, 13, 18, .6); }
.gx-hub i { position: absolute; padding: 5px 9px; border-radius: 9px; font-style: normal; font-size: 11px; color: #0b0d12; background: #fff; border: 1px solid rgba(11, 13, 18, .08); box-shadow: 0 4px 10px -8px rgba(20, 30, 70, .4); }
.gx-log { display: flex; align-items: center; gap: 8px; margin-top: 8px; font: 11px/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; color: #3d4b8f; } .gx-log em { width: 6px; height: 6px; border-radius: 50%; background: #16a34a; animation: gxBeat 1.6s ease-in-out infinite; }
/* invest */
.gx-inv { display: grid; gap: 7px; } .gx-inv__h { display: flex; justify-content: space-between; font-size: 11px; color: #5a6275; } .gx-inv__h em { font-style: normal; color: #3d5cff; }
.gx-crit { display: grid; grid-template-columns: 112px 1fr; align-items: center; gap: 10px; font-size: 12px; color: #0b0d12; }
.gx-crit u { height: 5px; border-radius: 5px; background: rgba(11, 13, 18, .07); overflow: hidden; } .gx-crit s { display: block; height: 100%; width: var(--v); border-radius: 5px; background: linear-gradient(90deg, #3d5cff, #22c08a); transform-origin: left; transform: scaleX(0); }
.lk-card.is-open .gx-crit s, .lk-card:hover .gx-crit s { animation: dvBar 1.2s cubic-bezier(.2, .8, .2, 1) forwards; animation-delay: calc(.2s + var(--i) * .15s); }
.gx-spark { width: 100%; height: 30px; margin-top: 2px; } .gx-spark path { fill: none; stroke: #3d5cff; stroke-width: 1.6; vector-effect: non-scaling-stroke; stroke-dasharray: 300; stroke-dashoffset: 300; }
.lk-card.is-open .gx-spark path, .lk-card:hover .gx-spark path { animation: gxSpark 1.6s ease .8s forwards; } @keyframes gxSpark { to { stroke-dashoffset: 0; } }
/* buy */
.gx-buy { display: grid; grid-template-columns: 112px 1fr; gap: 12px; align-items: center; }
.gx-buy__img { position: relative; display: block; height: 96px; border-radius: 12px; overflow: hidden; } .gx-buy__img svg { width: 100%; height: 100%; display: block; }
.lk-card.is-open .gx-buy__img svg, .lk-card:hover .gx-buy__img svg { animation: x2Zoom 5s ease-in-out infinite alternate; }
.gx-heart { position: absolute; right: 6px; top: 6px; width: 22px; height: 22px; border-radius: 50%; background: rgba(255, 255, 255, .85); }
.gx-heart::after { content: "♥"; position: absolute; inset: 0; display: grid; place-items: center; font-size: 11px; color: #9aa1b2; }
.lk-card.is-open .gx-heart::after, .lk-card:hover .gx-heart::after { animation: gxHeart .5s ease .9s forwards; } @keyframes gxHeart { 50% { transform: scale(1.4); } to { color: #ef4466; } }
.gx-buy__t small { display: block; font-size: 11px; color: #5a6275; } .gx-buy__t b { display: block; font-size: 14px; font-weight: 500; color: #0b0d12; margin-top: 2px; }
.gx-tags { display: flex; flex-wrap: wrap; gap: 5px; margin: 7px 0 9px; } .gx-tags em { font-style: normal; font-size: 10.5px; padding: 3px 8px; border-radius: 99px; background: #fff; border: 1px solid rgba(11, 13, 18, .08); color: #4a5163; }
.gx-btn { display: inline-block; padding: 6px 12px; border-radius: 10px; background: #0b0d12; color: #fff; font-size: 11.5px; }
/* rent */
.gx-rent { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; position: relative; }
.gx-rent::before { content: ""; position: absolute; left: 12%; right: 12%; top: 7px; height: 1px; background: rgba(11, 13, 18, .12); }
.gx-st { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; font-size: 10.5px; color: #5a6275; }
.gx-st i { width: 14px; height: 14px; border-radius: 50%; background: #fff; border: 1px solid rgba(11, 13, 18, .25); }
.lk-card.is-open .gx-st i, .lk-card:hover .gx-st i { animation: gxSt .4s ease forwards; animation-delay: calc(.3s + var(--i) * .45s); } @keyframes gxSt { to { background: #22c08a; border-color: #22c08a; box-shadow: 0 0 0 4px rgba(34, 192, 138, .15); } }
.gx-doc { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 120px auto; align-items: center; gap: 10px; margin-top: 10px; padding: 10px 12px; border-radius: 12px; background: #fff; border: 1px solid rgba(11, 13, 18, .07); }
.gx-doc span { display: grid; gap: 5px; } .gx-doc span i { display: block; height: 4px; width: var(--w); border-radius: 3px; background: rgba(11, 13, 18, .1); }
.gx-sign { width: 120px; height: 30px; } .gx-sign path { fill: none; stroke: #3d5cff; stroke-width: 1.8; stroke-linecap: round; stroke-dasharray: 220; stroke-dashoffset: 220; }
.lk-card.is-open .gx-sign path, .lk-card:hover .gx-sign path { animation: gxSpark 1.6s ease 1.6s forwards; }
.gx-doc em { font-style: normal; font-size: 10.5px; padding: 3px 8px; border-radius: 99px; background: rgba(34, 192, 138, .12); color: #0f7a55; opacity: 0; }
.lk-card.is-open .gx-doc em, .lk-card:hover .gx-doc em { animation: bpTxt .4s ease 3.1s forwards; }
/* rodapé */
.gx .lk-social a { background: rgba(255, 255, 255, .7); border: 1px solid rgba(11, 13, 18, .07); color: #0b0d12; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: 0 8px 18px -14px rgba(20, 30, 70, .5); }
.gx .lk-social a:hover { background: #0b0d12; color: #fff; }
.gx .lk-foot { color: #7a8194; }
@media (max-width: 380px) { .gx-crit { grid-template-columns: 92px 1fr; font-size: 11px; } .gx-buy { grid-template-columns: 96px 1fr; } .gx-doc { grid-template-columns: 1fr 90px; } .gx-doc em { display: none; } .gx-sign { width: 90px; } }
@media (prefers-reduced-motion: reduce) { .gx *, .gx-bg i { animation: none !important; } .gx-crit s { transform: none; } .gx-spark path, .gx-sign path { stroke-dashoffset: 0; } .gx-ic .gx-draw { stroke-dashoffset: 0; } }
/* /link v6.1 — ícones em bloco preto */
.gx-icw { background: #0b0d12; border-color: #0b0d12; box-shadow: 0 8px 18px -10px rgba(11, 13, 18, .55); }
.gx-ic { stroke: #fff; } .gx-ic .gx-dim { stroke: rgba(255, 255, 255, .3); } .gx-ic .gx-pins { stroke: rgba(255, 255, 255, .5); } .gx-ic .gx-fill { fill: #fff; }
.gx-ic .gx-door { stroke: #fff; } @keyframes gxDoor { 50% { fill: #fff; stroke: #fff; } }
/* /link v7 — logo no topo, assinatura embaixo, ícones novos, componente de investimento */
.gx-logo .brand-logo { height: 46px; color: #0b0d12; }
.gx .lk-head { padding-top: 40px; }
.gx-sigwrap { display: flex; justify-content: center; margin-top: 30px; opacity: .9; }
.gx-sigwrap .lk-sig { width: 190px; }
/* moldura do ícone com brilho girando */
@property --gxa { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
.gx-icw { isolation: isolate; }
.gx-icw::before { content: ""; position: absolute; inset: -1.5px; border-radius: 17.5px; padding: 1.5px; background: conic-gradient(from var(--gxa), transparent 0 62%, rgba(142, 162, 255, .9) 80%, #fff 88%, transparent 96%); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0); animation: gxRing 4.5s linear infinite; z-index: -1; opacity: .85; }
.gx li:nth-child(2) .gx-icw::before { animation-delay: -1.1s; } .gx li:nth-child(3) .gx-icw::before { animation-delay: -2.2s; } .gx li:nth-child(4) .gx-icw::before { animation-delay: -3.3s; }
@keyframes gxRing { to { --gxa: 360deg; } }
.gx-ic .gx-dim { stroke: rgba(255, 255, 255, .28); }
/* tech: pulsos saindo do chip */
.gx-ic .gx-flow { stroke: #fff; stroke-width: 1.8; stroke-dasharray: 2.5 21.5; stroke-dashoffset: 24; animation: gxFlow 1.8s linear infinite; }
@keyframes gxFlow { to { stroke-dashoffset: 0; } }
.gx-ic .gx-core { fill: #fff; stroke: none; transform-box: fill-box; transform-origin: center; animation: gxCore 1.8s ease-in-out infinite; }
@keyframes gxCore { 0%, 100% { transform: scale(.75); opacity: .65; } 50% { transform: scale(1); opacity: 1; } }
/* investimento: barras crescendo */
.gx-ic .gx-bar { fill: rgba(255, 255, 255, .14); stroke: #fff; transform-box: fill-box; transform-origin: 50% 100%; animation: gxBar 3s cubic-bezier(.5, 0, .2, 1) infinite; animation-delay: var(--d); }
.gx-ic .gx-bar--hi { fill: #fff; }
@keyframes gxBar { 0% { transform: scaleY(.3); } 30%, 80% { transform: scaleY(1); } 100% { transform: scaleY(.3); } }
.gx-ic .gx-pop { fill: #fff; filter: none; transform-box: fill-box; transform-origin: center; animation: gxPop 3s ease infinite; }
@keyframes gxPop { 0%, 25% { transform: scale(0); opacity: 0; } 38% { transform: scale(1.4); opacity: 1; } 50%, 80% { transform: scale(1); opacity: 1; } 100% { transform: scale(0); opacity: 0; } }
/* comprar / alugar: cometa contornando o traço */
.gx-ic .gx-comet { stroke: #fff; stroke-width: 1.8; stroke-dasharray: 22 78; stroke-dashoffset: 100; animation: gxComet 2.6s linear infinite; }
.gx-ic .gx-comet--k { stroke-dasharray: 9 31; stroke-dashoffset: 40; animation-name: gxCometK; }
@keyframes gxComet { to { stroke-dashoffset: 0; } } @keyframes gxCometK { to { stroke-dashoffset: 0; } }
.gx-ic .gx-door { fill: none; stroke: #fff; animation: none; }
.gx-ic--buy .gx-door { animation: gxDoorL 2.6s ease-in-out infinite; } @keyframes gxDoorL { 0%, 100% { opacity: .45; } 50% { opacity: 1; } }
.gx-ic .gx-key { animation: none; }
/* componente investimento */
.gx-inv2 { display: grid; grid-template-columns: 76px 1fr; gap: 12px 14px; align-items: center; }
.gx-gauge { position: relative; width: 76px; height: 76px; display: block; }
.gx-gauge svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.gx-gauge__bg { fill: none; stroke: rgba(11, 13, 18, .07); stroke-width: 6; }
.gx-gauge__v { fill: none; stroke: #3d5cff; stroke-width: 6; stroke-linecap: round; stroke-dasharray: 0 100; }
.lk-card.is-open .gx-gauge__v, .lk-card:hover .gx-gauge__v { animation: gxGauge 1.4s cubic-bezier(.2, .8, .2, 1) .2s forwards; }
@keyframes gxGauge { to { stroke-dasharray: 87 100; } }
@property --gxn { syntax: "<integer>"; inherits: false; initial-value: 0; }
.gx-gauge__n { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; line-height: 1; }
.gx-gauge__n b { --gxn: 0; counter-reset: gxn var(--gxn); font-size: 20px; font-weight: 600; color: #0b0d12; letter-spacing: -.02em; }
.gx-gauge__n b::after { content: counter(gxn); }
.lk-card.is-open .gx-gauge__n b, .lk-card:hover .gx-gauge__n b { animation: gxCount 1.4s cubic-bezier(.2, .8, .2, 1) .2s forwards; }
@keyframes gxCount { to { --gxn: 87; } }
.gx-gauge__n small { font-size: 9.5px; color: #7a8194; text-transform: uppercase; letter-spacing: .08em; margin-top: 3px; }
.gx-inv2__r { display: grid; gap: 8px; min-width: 0; }
.gx-chips { display: flex; flex-wrap: wrap; gap: 5px; }
.gx-chips em { font-style: normal; font-size: 10.5px; padding: 4px 9px 4px 20px; border-radius: 99px; background: #fff; border: 1px solid rgba(11, 13, 18, .08); color: #2b3140; position: relative; opacity: 0; transform: translateY(4px); }
.gx-chips em::before { content: ""; position: absolute; left: 8px; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: #22c08a; }
.lk-card.is-open .gx-chips em, .lk-card:hover .gx-chips em { animation: gxChip .45s ease forwards; animation-delay: calc(.6s + var(--i) * .2s); }
@keyframes gxChip { to { opacity: 1; transform: none; } }
.gx-area { grid-column: 1 / -1; position: relative; display: block; height: 74px; padding-bottom: 14px; }
.gx-area svg { width: 100%; height: 60px; display: block; overflow: visible; }
.gx-area__l { fill: none; stroke: #3d5cff; stroke-width: 2; vector-effect: non-scaling-stroke; stroke-linecap: round; stroke-dasharray: 400; stroke-dashoffset: 400; }
.gx-area__f { opacity: 0; }
.lk-card.is-open .gx-area__l, .lk-card:hover .gx-area__l { animation: gxLine 1.6s ease .5s forwards; } @keyframes gxLine { to { stroke-dashoffset: 0; } }
.lk-card.is-open .gx-area__f, .lk-card:hover .gx-area__f { animation: bpTxt .8s ease 1.4s forwards; }
.gx-area__dot { position: absolute; right: -4px; top: 1px; width: 10px; height: 10px; border-radius: 50%; background: #3d5cff; box-shadow: 0 0 0 4px rgba(61, 92, 255, .18); opacity: 0; }
.lk-card.is-open .gx-area__dot, .lk-card:hover .gx-area__dot { animation: bpTxt .3s ease 2s forwards, gxBeat 2s ease-in-out 2.3s infinite; }
.gx-area__x { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; font-size: 9.5px; color: #9aa1b2; }
@media (prefers-reduced-motion: reduce) { .gx-icw::before { animation: none; } .gx-gauge__v { stroke-dasharray: 87 100; } .gx-gauge__n b { --gxn: 87; } .gx-chips em, .gx-area__f, .gx-area__dot { opacity: 1; transform: none; } .gx-area__l { stroke-dashoffset: 0; } }
.gx-ic { width: 38px; height: 38px; stroke-width: 1.35; } .gx-ic .gx-flow, .gx-ic .gx-comet { stroke-width: 1.7; }
.gx-icw::before { inset: 0; border-radius: 16px; padding: 1.2px; z-index: 1; pointer-events: none; background: conic-gradient(from var(--gxa), transparent 0 55%, rgba(142, 162, 255, .55) 75%, #fff 88%, transparent 97%); } .gx-icw { border-color: rgba(255, 255, 255, .08); } .gx-ic .gx-dim { stroke: rgba(255, 255, 255, .38); }
/* /link v8 — LCTX centralizado + animação de entrada + tema claro/escuro */
.gx-logo { justify-content: center; }
.gx-lctx { display: block; height: 48px; width: auto; overflow: visible; color: #0b0d12; }
.gx-lctx text { font-family: "Inter Tight", Inter, system-ui, sans-serif; font-size: 26px; font-weight: 600; letter-spacing: .015em; }
.gx-lctx__lc { fill: currentColor; }
.gx-lctx__tx { fill: transparent; stroke: currentColor; stroke-width: .75px; }
.gx-lctx__u { fill: none; stroke: currentColor; stroke-width: 1; stroke-linecap: round; opacity: 0; }
.lk-intro .gx-lctx__lc { animation: lctxLc .9s cubic-bezier(.2, .8, .2, 1) .15s both; }
.lk-intro .gx-lctx__tx { stroke-dasharray: 160; stroke-dashoffset: 160; animation: lctxTx 1.5s cubic-bezier(.45, 0, .2, 1) .55s forwards; }
.lk-intro .gx-lctx__u { stroke-dasharray: 44; stroke-dashoffset: 44; animation: lctxU 1.6s ease 1.2s forwards; }
@keyframes lctxLc { from { opacity: 0; transform: translateY(8px); filter: blur(6px); } to { opacity: 1; transform: none; filter: none; } }
@keyframes lctxTx { to { stroke-dashoffset: 0; } }
@keyframes lctxU { 0% { opacity: 1; stroke-dashoffset: 44; } 55% { opacity: 1; stroke-dashoffset: 0; } 100% { opacity: 0; stroke-dashoffset: -44; } }
.lk-intro .gx .lk-bio { animation: lkIn .8s cubic-bezier(.2, .8, .2, 1) .9s both; }
/* botão de tema */
.gx-theme { position: fixed; top: 14px; right: 14px; z-index: 30; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 1px solid rgba(11, 13, 18, .08); background: rgba(255, 255, 255, .6); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); color: #0b0d12; cursor: pointer; transition: background .3s, color .3s, border-color .3s, transform .3s; }
.gx-theme:hover { transform: rotate(-12deg); }
.gx-theme svg { grid-area: 1 / 1; width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; transition: opacity .35s, transform .45s cubic-bezier(.2, .8, .2, 1); }
.gx-theme__sun { opacity: 0; transform: rotate(-90deg) scale(.6); }
.lk-dark .gx-theme__moon { opacity: 0; transform: rotate(90deg) scale(.6); }
.lk-dark .gx-theme__sun { opacity: 1; transform: none; }
/* tema escuro */
html.lk-dark, html.lk-dark body { background: #07080c; }
.lk-dark .gx-theme { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .12); color: #fff; }
.lk-dark .lk.gx { background: #07080c; color: #e8ebf5; }
.lk-dark .gx-bg i:nth-child(1) { background: radial-gradient(circle, #2a3fd0, transparent 65%); opacity: .4; }
.lk-dark .gx-bg i:nth-child(2) { background: radial-gradient(circle, #5b3fd0, transparent 65%); opacity: .35; }
.lk-dark .gx-bg i:nth-child(3) { background: radial-gradient(circle, #138a78, transparent 65%); opacity: .25; }
.lk-dark .gx-bg b { background-image: linear-gradient(rgba(255, 255, 255, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .035) 1px, transparent 1px); }
.lk-dark .gx-lctx { color: #fff; }
.lk-dark .gx .lk-bio { color: rgba(232, 235, 245, .66); } .lk-dark .gx .lk-bio b { color: #fff; }
.lk-dark .gx .lk-sig { filter: invert(1); }
.lk-dark .gx .lk-card { background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .1); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), 0 20px 40px -30px rgba(0, 0, 0, .9); color: #fff; }
.lk-dark .gx .lk-card.is-open, .lk-dark .gx .lk-card:focus-visible { background: rgba(255, 255, 255, .08); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 0 0 1px rgba(142, 162, 255, .35), 0 30px 60px -30px rgba(61, 92, 255, .55); }
@media (hover: hover) { .lk-dark .gx .lk-card:hover { background: rgba(255, 255, 255, .08); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 0 0 1px rgba(142, 162, 255, .35), 0 30px 60px -30px rgba(61, 92, 255, .55); } }
.lk-dark .gx .lk-txt strong { color: #fff; } .lk-dark .gx .lk-txt small { color: rgba(232, 235, 245, .6); }
.lk-dark .gx-icw { background: #fff; border-color: #fff; box-shadow: 0 8px 22px -12px rgba(142, 162, 255, .5); }
.lk-dark .gx-icw::before { background: conic-gradient(from var(--gxa), transparent 0 55%, rgba(61, 92, 255, .5) 75%, #3d5cff 88%, transparent 97%); }
.lk-dark .gx-ic { stroke: #0b0d12; } .lk-dark .gx-ic .gx-dim { stroke: rgba(11, 13, 18, .3); } .lk-dark .gx-ic .gx-pins { stroke: rgba(11, 13, 18, .45); }
.lk-dark .gx-ic .gx-flow, .lk-dark .gx-ic .gx-comet, .lk-dark .gx-ic .gx-door, .lk-dark .gx-ic .gx-bar { stroke: #0b0d12; }
.lk-dark .gx-ic .gx-core, .lk-dark .gx-ic .gx-fill, .lk-dark .gx-ic .gx-pop, .lk-dark .gx-ic .gx-bar--hi { fill: #0b0d12; } .lk-dark .gx-ic .gx-bar { fill: rgba(11, 13, 18, .12); } .lk-dark .gx-ic .gx-bar--hi { fill: #0b0d12; }
.lk-dark .gx-go { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .12); color: #fff; }
.lk-dark .gx .lk-card:hover .gx-go, .lk-dark .gx .lk-card.is-open .gx-go { background: #fff; border-color: #fff; color: #0b0d12; }
.lk-dark .gx-xp { background: rgba(7, 8, 12, .5); border-color: rgba(255, 255, 255, .08); }
.lk-dark .gx-xpbar { color: rgba(232, 235, 245, .62); } .lk-dark .gx-cta { background: #fff; color: #0b0d12; }
.lk-dark .gx-hub__l path { stroke: rgba(142, 162, 255, .45); } .lk-dark .gx-hub__l circle { fill: #8ea2ff; }
.lk-dark .gx-hub b { background: #fff; color: #0b0d12; } .lk-dark .gx-hub i { background: rgba(255, 255, 255, .07); border-color: rgba(255, 255, 255, .12); color: #fff; box-shadow: none; }
.lk-dark .gx-log { color: #9fb0ff; } .lk-dark .gx-log em { background: #6fdc9a; }
.lk-dark .gx-inv__h { color: rgba(232, 235, 245, .6); } .lk-dark .gx-inv__h em { color: #9fb0ff; }
.lk-dark .gx-gauge__bg { stroke: rgba(255, 255, 255, .08); } .lk-dark .gx-gauge__v { stroke: #8ea2ff; } .lk-dark .gx-gauge__n b { color: #fff; } .lk-dark .gx-gauge__n small { color: rgba(232, 235, 245, .5); }
.lk-dark .gx-chips em { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .1); color: #e8ebf5; } .lk-dark .gx-chips em::before { background: #6fdc9a; }
.lk-dark .gx-area__l { stroke: #8ea2ff; } .lk-dark .gx-area__dot { background: #8ea2ff; box-shadow: 0 0 0 4px rgba(142, 162, 255, .2); } .lk-dark .gx-area__x { color: rgba(232, 235, 245, .4); }
.lk-dark .gx-buy__t small { color: rgba(232, 235, 245, .6); } .lk-dark .gx-buy__t b { color: #fff; }
.lk-dark .gx-tags em { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .1); color: rgba(232, 235, 245, .85); }
.lk-dark .gx-btn { background: #fff; color: #0b0d12; } .lk-dark .gx-heart { background: rgba(7, 8, 12, .6); }
.lk-dark .gx-rent::before { background: rgba(255, 255, 255, .15); } .lk-dark .gx-st { color: rgba(232, 235, 245, .7); } .lk-dark .gx-st i { background: #07080c; border-color: rgba(255, 255, 255, .35); }
.lk-dark .gx-doc { background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .1); } .lk-dark .gx-doc span i { background: rgba(255, 255, 255, .18); } .lk-dark .gx-sign path { stroke: #b9c6ff; } .lk-dark .gx-doc em { color: #6fdc9a; }
.lk-dark .gx .lk-social a { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .12); color: #fff; box-shadow: none; }
.lk-dark .gx .lk-social a:hover { background: #fff; color: #0b0d12; }
.lk-dark .gx .lk-foot { color: rgba(232, 235, 245, .45); }
.lk.gx, .gx .lk-card, .gx-icw, .gx-xp, .gx .lk-social a { transition: background-color .4s, border-color .4s, color .4s, box-shadow .4s, transform .35s; }
@media (prefers-reduced-motion: reduce) { .lk-intro .gx-lctx__lc, .lk-intro .gx .lk-bio { animation: none; } .lk-intro .gx-lctx__tx { animation: none; stroke-dashoffset: 0; } .gx-lctx__u { display: none; } }
/* LCTX v4 — revelação com cursor (SMIL); substitui a animação anterior por traço */
.lk-intro .gx-lctx__lc, .lk-intro .gx-lctx__tx { animation: none; stroke-dasharray: none; stroke-dashoffset: 0; }
.lctx-cur { fill: currentColor; }
@media (prefers-reduced-motion: reduce) { .lctx-clip { clip-path: none !important; } .lctx-cur { display: none; } }
/* LCTX v5 — letras sobem em sequência */
.gx-lctx text { font-family: "Inter Tight", Inter, system-ui, sans-serif; font-size: 26px; font-weight: 600; letter-spacing: .015em; }
.gx-lctx__l { fill: currentColor; }
.gx-lctx__l.gx-lctx__tx { fill: transparent; stroke: currentColor; stroke-width: .75px; }
.brand-logo text.brand-logo__x { fill: transparent; stroke: currentColor; stroke-width: .75px; }
.lctx-cur { display: none; }
@media (prefers-reduced-motion: reduce) { .lctx-clip text { transform: none !important; opacity: 1 !important; } }
/* ================= carrinho de soluções ================= */
.lc-cartbtn { position: relative; display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 999px; border: 0; background: transparent; color: var(--lc-ink); opacity: .55; cursor: pointer; transition: opacity .25s, background .25s; }
.lc-cartbtn:hover, .lc-cartbtn.has-items { opacity: 1; }
.lc-cartbtn svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.lc-cartbtn__n { position: absolute; top: 0; right: -2px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 99px; background: var(--lc-primary); color: #fff; font-size: 10.5px; font-weight: 600; line-height: 17px; text-align: center; animation: cartPop .35s var(--lc-ease); }
@keyframes cartPop { from { transform: scale(.4); } }
@media (max-width: 1279px) { .lc-cartbtn { width: 40px; height: 40px; } }
.lc-add { display: inline-flex; align-items: center; gap: 7px; height: 34px; padding: 0 13px 0 10px; border-radius: 99px; border: 1px solid var(--lc-line); background: var(--lc-surface); color: var(--lc-ink); font-size: 13px; font-weight: 500; cursor: pointer; transition: background .25s, border-color .25s, color .25s, transform .2s; }
.lc-add:hover { border-color: var(--lc-ink); }
.lc-add:active { transform: scale(.97); }
.lc-add__ic { display: grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: var(--lc-soft); transition: background .25s; }
.lc-add__ic svg { width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.lc-add__c { display: none; }
.lc-add.is-on { background: var(--lc-ink); border-color: var(--lc-ink); color: var(--lc-bg); }
.lc-add.is-on .lc-add__ic { background: rgba(255, 255, 255, .16); } .lc-add.is-on .lc-add__p { display: none; } .lc-add.is-on .lc-add__c { display: block; }
.lc-add--hero { height: 56px; padding: 0 22px 0 16px; font-size: 15px; border-color: var(--lc-ink); }
.lc-add--hero .lc-add__ic { width: 24px; height: 24px; } .lc-add--hero .lc-add__ic svg { width: 14px; height: 14px; }
.lc-svcw { position: relative; display: flex; }
.lc-svcw > .lc-svc__a { flex: 1; padding-bottom: 72px; }
.lc-svcw > .lc-add { position: absolute; left: 24px; bottom: 22px; z-index: 2; }
@media (max-width: 640px) { .lc-svcw > .lc-add { left: 20px; bottom: 18px; } .lc-svcw > .lc-svc__a { padding-bottom: 66px; } }
.lc-cart { position: fixed; inset: 0; z-index: 120; }
.lc-cart__bg { position: absolute; inset: 0; background: rgba(8, 10, 16, .38); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); opacity: 0; transition: opacity .3s; }
.lc-cart__panel { position: absolute; top: 12px; right: 12px; bottom: 12px; width: min(420px, calc(100vw - 24px)); display: flex; flex-direction: column; padding: 26px; border-radius: 24px; background: var(--lc-surface); border: 1px solid var(--lc-line); box-shadow: 0 30px 80px -30px rgba(10, 14, 30, .45); transform: translateX(calc(100% + 24px)); transition: transform .38s var(--lc-ease); overflow: hidden; }
.lc-cart.is-open .lc-cart__bg { opacity: 1; } .lc-cart.is-open .lc-cart__panel { transform: none; }
.lc-cart__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.lc-cart__t { font-size: 22px; font-weight: 500; letter-spacing: -.02em; color: var(--lc-ink); margin-top: 4px; }
.lc-cart__x { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--lc-line); background: transparent; color: var(--lc-ink); cursor: pointer; }
.lc-cart__x svg, .lc-cart__list button svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; }
.lc-cart__lead { margin-top: 12px; font-size: 14px; color: var(--lc-muted); line-height: 1.55; }
.lc-cart__list { flex: 1; overflow-y: auto; margin: 18px -6px 0; padding: 0 6px; display: grid; align-content: start; gap: 8px; }
.lc-cart__list li { display: flex; align-items: center; gap: 10px; padding: 12px 10px 12px 14px; border-radius: 14px; border: 1px solid var(--lc-line); background: var(--lc-bg); animation: cartIn .35s var(--lc-ease) both; }
@keyframes cartIn { from { opacity: 0; transform: translateY(6px); } }
.lc-cart__list a { flex: 1; min-width: 0; display: grid; gap: 2px; color: var(--lc-ink); }
.lc-cart__list small { font-size: 11px; color: var(--lc-muted); text-transform: uppercase; letter-spacing: .06em; }
.lc-cart__list b { font-weight: 500; font-size: 14.5px; line-height: 1.35; }
.lc-cart__list button { flex: 0 0 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; border: 0; background: transparent; color: var(--lc-muted); cursor: pointer; }
.lc-cart__list button:hover { background: var(--lc-soft); color: var(--lc-ink); }
.lc-cart__empty { flex: 1; display: grid; place-content: center; justify-items: center; gap: 8px; text-align: center; padding: 24px; color: var(--lc-muted); font-size: 14px; }
.lc-cart__empty svg { width: 40px; height: 40px; fill: none; stroke: currentColor; stroke-width: 1.3; opacity: .5; margin-bottom: 6px; }
.lc-cart__empty p { color: var(--lc-ink); font-weight: 500; font-size: 15px; } .lc-cart__empty[hidden] { display: none; }
.lc-cart__foot { display: grid; gap: 10px; padding-top: 18px; margin-top: 12px; border-top: 1px solid var(--lc-line); }
.lc-cart__go { display: flex; align-items: center; justify-content: center; gap: 6px; height: 54px; border-radius: 99px; background: var(--lc-ink); color: var(--lc-bg); font-weight: 500; font-size: 15px; }
.lc-cart__go.is-off { opacity: .35; pointer-events: none; }
.lc-cart__more { text-align: center; font-size: 14px; color: var(--lc-muted); padding: 6px; }
.lc-toast { position: fixed; left: 50%; bottom: 22px; z-index: 110; transform: translate(-50%, 140%); max-width: calc(100vw - 32px); padding: 12px 16px; border-radius: 16px; background: var(--lc-ink); color: var(--lc-bg); font-size: 14px; box-shadow: 0 20px 50px -20px rgba(0, 0, 0, .5); transition: transform .4s var(--lc-ease); display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: center; }
.lc-toast.is-on { transform: translate(-50%, 0); }
.lc-toast b { font-weight: 600; } .lc-toast button { border: 0; background: transparent; color: inherit; text-decoration: underline; text-underline-offset: 3px; font: inherit; cursor: pointer; padding: 0; }
.lc-pick { margin-bottom: 22px; padding: 16px; border-radius: 16px; background: var(--lc-soft); border: 1px solid var(--lc-line); }
.lc-pick__h { display: flex; justify-content: space-between; gap: 12px; font-size: 13px; color: var(--lc-muted); margin-bottom: 10px; }
.lc-pick ul { display: flex; flex-wrap: wrap; gap: 6px; }
.lc-pick li { display: inline-flex; align-items: center; gap: 6px; padding: 6px 6px 6px 12px; border-radius: 99px; background: var(--lc-surface); border: 1px solid var(--lc-line); font-size: 13.5px; color: var(--lc-ink); }
.lc-pick li button { width: 22px; height: 22px; border-radius: 50%; border: 0; background: var(--lc-soft); color: var(--lc-muted); cursor: pointer; line-height: 1; }
@media (prefers-reduced-motion: reduce) { .lc-cart__panel, .lc-cart__bg, .lc-toast { transition: none; } }
.lc-toast { width: max-content; max-width: min(360px, calc(100vw - 32px)); transform: translate(-50%, calc(100% + 48px)); visibility: hidden; transition: transform .4s var(--lc-ease), visibility 0s .4s; flex-wrap: nowrap; white-space: nowrap; }
.lc-toast.is-on { visibility: visible; transition: transform .4s var(--lc-ease); }
.lc-toast span { overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 1023px) { .lc-toast { bottom: 96px; } }
/* ================= combinações recomendadas ================= */
.lc-kit { border-radius: var(--lc-r-lg); border: 1px solid var(--lc-line); background: var(--lc-surface); padding: clamp(14px, 2.4vw, 28px); }
.lc-kit__tabs { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; padding: 4px; margin: -4px -4px 0; }
.lc-kit__tabs::-webkit-scrollbar { display: none; }
.lc-kit__tab { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 16px; border-radius: 99px; border: 1px solid var(--lc-line); background: transparent; color: var(--lc-muted); font-size: 14px; font-weight: 500; cursor: pointer; transition: background .25s, color .25s, border-color .25s; white-space: nowrap; }
.lc-kit__tab:hover { color: var(--lc-ink); border-color: var(--lc-ink); }
.lc-kit__tab[aria-selected="true"] { background: var(--lc-ink); border-color: var(--lc-ink); color: var(--lc-bg); }
.lc-kit__panel { display: grid; grid-template-columns: 1fr; gap: 28px; margin-top: 26px; animation: kitIn .45s var(--lc-ease) both; }
.lc-kit__panel[hidden] { display: none; }
@keyframes kitIn { from { opacity: 0; transform: translateY(8px); } }
@media (min-width: 1024px) { .lc-kit__panel { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 48px; align-items: center; } }
.lc-kit__who { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; color: var(--lc-muted); padding: 6px 12px; border-radius: 99px; background: var(--lc-soft); }
.lc-kit__t { margin-top: 14px; font-size: clamp(1.5rem, 2.6vw, 2rem); font-weight: 500; letter-spacing: -.025em; color: var(--lc-ink); }
.lc-kit__out { margin-top: 8px; color: var(--lc-muted); font-size: 15.5px; line-height: 1.55; max-width: 520px; }
.lc-kit__list { margin-top: 22px; display: grid; gap: 8px; }
.lc-kit__list li { display: flex; align-items: center; gap: 14px; padding: 12px 12px 12px 14px; border-radius: 16px; border: 1px solid var(--lc-line); background: var(--lc-bg); }
.lc-kit__n { font-size: 12px; font-weight: 600; color: var(--lc-primary); font-variant-numeric: tabular-nums; }
.lc-kit__list a { flex: 1; min-width: 0; display: grid; gap: 2px; }
.lc-kit__list b { font-weight: 500; font-size: 14.5px; color: var(--lc-ink); }
.lc-kit__list small { font-size: 12.5px; color: var(--lc-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lc-add--sm { height: 32px; padding: 0 11px 0 8px; font-size: 12.5px; flex-shrink: 0; }
@media (max-width: 480px) { .lc-add--sm .lc-add__t { display: none; } .lc-add--sm { padding: 0 7px; } }
.lc-kit__cta { margin-top: 20px; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; }
.lc-kit__cta > span { font-size: 13px; color: var(--lc-muted); }
.lc-kit__all { display: inline-flex; align-items: center; gap: 10px; height: 52px; padding: 0 22px; border-radius: 99px; border: 0; background: var(--lc-primary); color: #fff; font-size: 15px; font-weight: 500; cursor: pointer; transition: transform .2s, box-shadow .3s; box-shadow: 0 14px 30px -16px rgba(61, 92, 255, .8); }
.lc-kit__all:hover { transform: translateY(-1px); }
.lc-kit__vis { position: relative; }
.lc-kit__vis::before { content: ""; position: absolute; inset: 8% 4%; z-index: 0; background: radial-gradient(50% 50% at 50% 50%, rgba(61, 92, 255, .2), transparent 70%); filter: blur(20px); }
.lc-kit__vis > div { position: relative; }
.lc-kit__who i { width: 6px; height: 6px; border-radius: 50%; background: var(--lc-primary); }
/* ================= home: IA compacta ================= */
.lc-ai4 { position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr; gap: 26px; padding: clamp(26px, 4vw, 44px); }
@media (min-width: 1024px) { .lc-ai4 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; align-items: center; } }
.lc-ai4__glow { position: absolute; right: -10%; top: -40%; width: 60%; height: 180%; background: radial-gradient(closest-side, rgba(61, 92, 255, .35), transparent); filter: blur(30px); pointer-events: none; }
.lc-ai4__txt, .lc-ai4__list { position: relative; }
.lc-ai4__h { margin-top: 10px; font-size: clamp(1.6rem, 3vw, 2.3rem); line-height: 1.12; font-weight: 500; letter-spacing: -.03em; color: #fff; max-width: 460px; }
.lc-ai4__gov { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.lc-ai4__gov span { font-size: 12.5px; padding: 6px 12px; border-radius: 99px; border: 1px solid rgba(255, 255, 255, .14); color: rgba(255, 255, 255, .75); }
.lc-ai4__list { display: grid; gap: 6px; }
.lc-ai4__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; border-radius: 14px; background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .08); color: #fff; font-size: 14.5px; transition: background .25s, border-color .25s; }
.lc-ai4__row:hover { background: rgba(255, 255, 255, .09); border-color: rgba(142, 162, 255, .4); }
.lc-ai4__all { display: inline-flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 14px; color: #9fb0ff; }
/* ================= ver mais ================= */
.lc-more { display: flex; justify-content: center; margin-top: 36px; }
.lc-more__btn { display: inline-flex; align-items: center; gap: 10px; height: 50px; padding: 0 22px; border-radius: 99px; border: 1px solid var(--lc-line); background: var(--lc-surface); color: var(--lc-ink); font-size: 15px; font-weight: 500; cursor: pointer; transition: border-color .25s; }
.lc-more__btn:hover { border-color: var(--lc-ink); }
.lc-more__btn small { font-size: 12.5px; color: var(--lc-muted); font-weight: 400; }
.lc-more__btn[hidden] { display: none; }
[data-more-item].is-in { animation: kitIn .5s var(--lc-ease) both; }
/* ================= tecnologias: explorador de camadas ================= */
.lc-tx { display: grid; grid-template-columns: 1fr; gap: 20px; }
@media (min-width: 1024px) { .lc-tx { grid-template-columns: 340px minmax(0, 1fr); gap: 32px; align-items: start; } }
.lc-tx__stack { position: relative; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 2px; }
.lc-tx__stack::-webkit-scrollbar { display: none; }
@media (min-width: 1024px) { .lc-tx__stack { flex-direction: column; overflow: visible; position: sticky; top: 110px; } }
.lc-tx__beam { display: none; }
@media (min-width: 1024px) { .lc-tx__beam { display: block; position: absolute; left: 31px; top: 24px; bottom: 24px; width: 2px; background: var(--lc-line); }
  .lc-tx__beam b { position: absolute; left: -3px; top: 0; width: 8px; height: 8px; border-radius: 50%; background: var(--lc-primary); box-shadow: 0 0 0 5px rgba(61, 92, 255, .15); animation: txBeam 4.2s cubic-bezier(.6, 0, .4, 1) infinite; } }
@keyframes txBeam { 0% { top: 0; opacity: 0; } 8% { opacity: 1; } 92% { opacity: 1; } 100% { top: 100%; opacity: 0; } }
.lc-tx__slab { position: relative; z-index: 1; flex: 0 0 auto; display: flex; align-items: center; gap: 12px; padding: 12px 16px 12px 14px; border-radius: 14px; border: 1px solid var(--lc-line); background: var(--lc-surface); color: var(--lc-muted); font-size: 14.5px; font-weight: 500; cursor: pointer; text-align: left; transition: background .3s, color .3s, border-color .3s, transform .3s var(--lc-ease), box-shadow .3s; white-space: nowrap; }
@media (min-width: 1024px) { .lc-tx__slab { transform: perspective(600px) rotateX(0); } .lc-tx__slab:hover { transform: translateX(4px); } }
.lc-tx__ix { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--lc-soft); font-size: 12px; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--lc-ink); transition: background .3s, color .3s; flex-shrink: 0; }
.lc-tx__nm { flex: 1; }
.lc-tx__ct { font-size: 12px; color: var(--lc-faint); }
.lc-tx__slab[aria-selected="true"] { color: var(--lc-ink); border-color: var(--lc-ink); box-shadow: 0 16px 30px -22px rgba(10, 14, 30, .5); }
.lc-tx__slab[aria-selected="true"] .lc-tx__ix { background: var(--lc-ink); color: var(--lc-bg); }
@media (min-width: 1024px) { .lc-tx__slab[aria-selected="true"] { transform: translateX(10px); } }
.lc-tx__view { min-width: 0; }
.lc-tx__panel { padding: clamp(20px, 3vw, 32px); border-radius: var(--lc-r-lg); border: 1px solid var(--lc-line); background: var(--lc-surface); animation: kitIn .45s var(--lc-ease) both; }
.lc-tx__panel[hidden] { display: none; }
.lc-tx__ph { display: flex; gap: 16px; align-items: flex-start; padding-bottom: 20px; border-bottom: 1px solid var(--lc-line); }
.lc-tx__items { display: grid; grid-template-columns: 1fr; gap: 10px; margin-top: 20px; }
@media (min-width: 640px) { .lc-tx__items { grid-template-columns: 1fr 1fr; } }
.lc-tx__items li { display: flex; gap: 12px; padding: 14px; border-radius: 14px; background: var(--lc-bg); border: 1px solid var(--lc-line); animation: kitIn .45s var(--lc-ease) both; animation-delay: calc(var(--i) * 40ms); }
.lc-tx__mono { flex: 0 0 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; background: linear-gradient(135deg, var(--lc-primary), #7a5cff); color: #fff; font-size: 13px; font-weight: 600; letter-spacing: -.02em; }
.lc-tx__items strong { display: block; font-size: 14.5px; font-weight: 500; color: var(--lc-ink); }
.lc-tx__items span { font-size: 13px; color: var(--lc-muted); line-height: 1.45; }
/* stack por solução */
.lc-st { padding: clamp(22px, 4vw, 44px); border-radius: var(--lc-r-lg); border: 1px solid var(--lc-line); background: var(--lc-surface); }
.lc-st__head { display: grid; gap: 14px; }
@media (min-width: 1024px) { .lc-st__head { grid-template-columns: 1.2fr 1fr; align-items: end; gap: 40px; } }
.lc-st__panel { margin-top: 22px; }
.lc-st__panel[hidden] { display: none; }
.lc-st__layers { display: grid; gap: 8px; }
.lc-st__layers li { display: grid; grid-template-columns: 1fr; gap: 10px; padding: 14px 16px; border-radius: 14px; border: 1px solid var(--lc-line); background: var(--lc-bg); animation: kitIn .45s var(--lc-ease) both; animation-delay: calc(var(--i) * 70ms); position: relative; overflow: hidden; }
@media (min-width: 768px) { .lc-st__layers li { grid-template-columns: 200px 1fr; align-items: center; } }
.lc-st__layers li::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--lc-primary); opacity: calc(1 - var(--i) * .15); }
.lc-st__layers li > span { font-size: 13px; font-weight: 600; color: var(--lc-ink); text-transform: uppercase; letter-spacing: .06em; }
.lc-st__layers div { display: flex; flex-wrap: wrap; gap: 6px; }
.lc-st__layers em { font-style: normal; font-size: 13.5px; padding: 6px 12px; border-radius: 99px; background: var(--lc-surface); border: 1px solid var(--lc-line); color: var(--lc-ink); }
/* pipeline */
.lc-pipe { position: relative; display: grid; grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 1024px) { .lc-pipe { grid-template-columns: repeat(7, 1fr); gap: 12px; } }
.lc-pipe__line { display: none; }
@media (min-width: 1024px) { .lc-pipe__line { display: block; position: absolute; left: 7%; right: 7%; top: 18px; height: 2px; background: var(--lc-line); }
  .lc-pipe__line b { position: absolute; top: -4px; left: 0; width: 10px; height: 10px; border-radius: 50%; background: var(--lc-primary); box-shadow: 0 0 0 6px rgba(61, 92, 255, .15); animation: pipeRun 7s linear infinite; } }
@keyframes pipeRun { from { left: 0; } to { left: 100%; } }
.lc-pipe li { position: relative; display: grid; gap: 4px; padding: 14px 16px; border-radius: 14px; border: 1px solid var(--lc-line); background: var(--lc-surface); }
@media (min-width: 1024px) { .lc-pipe li { padding: 44px 14px 16px; text-align: center; } }
.lc-pipe li i { position: absolute; left: 16px; top: 16px; width: 12px; height: 12px; border-radius: 50%; border: 2px solid var(--lc-primary); background: var(--lc-surface); }
@media (max-width: 1023px) { .lc-pipe li { padding-left: 40px; } }
@media (min-width: 1024px) { .lc-pipe li i { left: 50%; top: 12px; margin-left: -6px; } }
.lc-pipe li strong { font-size: 14.5px; font-weight: 500; color: var(--lc-ink); }
.lc-pipe li span { font-size: 12.5px; color: var(--lc-muted); line-height: 1.4; }
@media (prefers-reduced-motion: reduce) { .lc-tx__beam b, .lc-pipe__line b { animation: none; } }
.lc-st .lc-kit__tabs { margin-top: 28px; }
/* ================= perguntas frequentes ================= */
.lc-fq { display: grid; grid-template-columns: 1fr; gap: 28px; }
@media (min-width: 1024px) { .lc-fq { grid-template-columns: 300px minmax(0, 1fr); gap: 48px; align-items: start; } .lc-fq__side { position: sticky; top: 110px; } }
.lc-fq__count { margin: 12px 4px 0; font-size: 13px; color: var(--lc-muted); }
.lc-fq__cats { display: flex; gap: 6px; margin-top: 14px; overflow-x: auto; scrollbar-width: none; }
.lc-fq__cats::-webkit-scrollbar { display: none; }
@media (min-width: 1024px) { .lc-fq__cats { flex-direction: column; overflow: visible; } }
.lc-fq__cats a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; border-radius: 12px; border: 1px solid var(--lc-line); background: var(--lc-surface); font-size: 14px; color: var(--lc-ink); white-space: nowrap; transition: border-color .25s, background .25s; }
.lc-fq__cats a:hover, .lc-fq__cats a.is-current { border-color: var(--lc-ink); }
.lc-fq__cats small { font-size: 12px; color: var(--lc-faint); }
.lc-fq__help { display: none; margin-top: 20px; padding: 20px; border-radius: 18px; background: var(--lc-soft); border: 1px solid var(--lc-line); font-size: 14px; color: var(--lc-muted); }
@media (min-width: 1024px) { .lc-fq__help { display: block; } }
.lc-fq__ht { font-weight: 500; color: var(--lc-ink); font-size: 15px; margin-bottom: 4px; }
.lc-fq__help .lc-a { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; }
.lc-fq__g { scroll-margin-top: 110px; }
.lc-fq__g + .lc-fq__g { margin-top: 44px; }
.lc-fq__g[hidden] { display: none; }
.lc-fq__gh { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.lc-fq__list { display: grid; gap: 8px; }
.lc-q { border-radius: 18px; border: 1px solid var(--lc-line); background: var(--lc-surface); transition: border-color .3s, box-shadow .3s; }
.lc-q[open] { border-color: color-mix(in srgb, var(--lc-primary) 35%, var(--lc-line)); box-shadow: 0 18px 40px -30px rgba(23, 37, 120, .45); }
.lc-q[hidden] { display: none; }
.lc-q summary { list-style: none; display: flex; align-items: center; gap: 14px; padding: 18px 20px; cursor: pointer; }
.lc-q summary::-webkit-details-marker { display: none; }
.lc-q__n { font-size: 12px; font-weight: 600; color: var(--lc-faint); font-variant-numeric: tabular-nums; }
.lc-q__t { flex: 1; font-size: 16px; font-weight: 500; color: var(--lc-ink); line-height: 1.4; }
.lc-q__ic { position: relative; flex: 0 0 30px; height: 30px; border-radius: 50%; border: 1px solid var(--lc-line); transition: background .3s, transform .35s var(--lc-ease), border-color .3s; }
.lc-q__ic::before, .lc-q__ic::after { content: ""; position: absolute; left: 50%; top: 50%; width: 11px; height: 1.6px; margin: -.8px 0 0 -5.5px; background: var(--lc-ink); border-radius: 2px; transition: transform .35s var(--lc-ease), background .3s; }
.lc-q__ic::after { transform: rotate(90deg); }
.lc-q[open] .lc-q__ic { background: var(--lc-ink); border-color: var(--lc-ink); transform: rotate(180deg); }
.lc-q[open] .lc-q__ic::before, .lc-q[open] .lc-q__ic::after { background: var(--lc-bg); } .lc-q[open] .lc-q__ic::after { transform: rotate(0); }
.lc-q__a { padding: 0 20px 20px 52px; color: var(--lc-muted); font-size: 15px; line-height: 1.65; animation: kitIn .35s var(--lc-ease) both; }
.lc-q__a mark { background: rgba(61, 92, 255, .14); color: inherit; border-radius: 3px; }
@media (max-width: 640px) { .lc-q__a { padding-left: 20px; } .lc-q__t { font-size: 15px; } }
.lc-fq__none { padding: 40px; text-align: center; border-radius: 18px; border: 1px dashed var(--lc-line); color: var(--lc-muted); display: grid; gap: 8px; justify-items: center; }
.lc-fq__none[hidden] { display: none; }
/* ================= menu mobile v2 ================= */
.lc-nav--v2 .lc-nav__top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.lc-nav__tools { display: flex; align-items: center; gap: 8px; }
.lc-mcart { display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 12px; border-radius: 99px; border: 1px solid var(--lc-line); background: var(--lc-surface); color: var(--lc-ink); font-size: 13.5px; font-weight: 500; cursor: pointer; }
.lc-mcart svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.lc-mcart b { min-width: 18px; height: 18px; padding: 0 5px; border-radius: 99px; background: var(--lc-primary); color: #fff; font-size: 11px; line-height: 18px; text-align: center; }
.lc-mcart b[hidden] { display: none; }
.lc-mq { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 14px -16px 0; padding: 0 16px 2px; }
.lc-mq::-webkit-scrollbar { display: none; }
.lc-mq a { flex: 0 0 auto; padding: 8px 13px; border-radius: 99px; background: var(--lc-surface); border: 1px solid var(--lc-line); font-size: 13px; color: var(--lc-ink); white-space: nowrap; }
.lc-nav--v2 .lc-mtabs { margin-top: 14px; }
.lc-mkit { position: relative; display: grid; gap: 4px; padding: 18px 48px 18px 18px; border-radius: 20px; overflow: hidden; background: #0b0d12; color: #fff; isolation: isolate; }
.lc-mkit::before { content: ""; position: absolute; right: -30%; top: -60%; width: 90%; height: 200%; background: radial-gradient(closest-side, rgba(61, 92, 255, .55), transparent); z-index: -1; }
.lc-mkit__k { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: rgba(255, 255, 255, .55); }
.lc-mkit strong { font-size: 16.5px; font-weight: 500; letter-spacing: -.01em; }
.lc-mkit small { font-size: 12.5px; color: rgba(255, 255, 255, .62); line-height: 1.45; }
.lc-mkit__go { position: absolute; right: 14px; top: 50%; margin-top: -16px; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: #fff; color: #0b0d12; }
.lc-mkit__mark { position: absolute; right: 54px; bottom: -14px; font: 600 54px/1 "Inter Tight", Inter, sans-serif; color: rgba(255, 255, 255, .05); letter-spacing: .01em; z-index: -1; }
.lc-mkit__mark i { font-style: normal; color: transparent; -webkit-text-stroke: 1px rgba(255, 255, 255, .1); }
.lc-mrows { display: grid; gap: 6px; }
.lc-nav--v2 .lc-mrow { border-radius: 16px; background: var(--lc-surface); border: 1px solid var(--lc-line); overflow: hidden; }
.lc-nav--v2 .lc-mrow .lc-mcard__head { display: flex; align-items: center; gap: 12px; width: 100%; padding: 14px 14px 14px 16px; background: none; border: 0; text-align: left; cursor: pointer; color: var(--lc-ink); }
.lc-mrow__ic { color: var(--lc-primary); flex-shrink: 0; }
.lc-mrow__t { flex: 1; font-size: 15px; font-weight: 500; }
.lc-mrow__n { font-size: 11.5px; color: var(--lc-muted); padding: 2px 8px; border-radius: 99px; background: var(--lc-soft); }
.lc-nav--v2 .lc-mcard__chev { transition: transform .3s var(--lc-ease); color: var(--lc-muted); }
.lc-nav--v2 .lc-mcard__head[aria-expanded="true"] .lc-mcard__chev { transform: rotate(180deg); }
.lc-mrow__list { display: grid; padding: 0 8px; border-top: 1px solid var(--lc-line); }
.lc-mrow__list li { display: flex; align-items: center; gap: 8px; border-bottom: 1px solid var(--lc-line); }
.lc-mrow__list li:last-child { border-bottom: 0; }
.lc-mrow__list a { flex: 1; padding: 12px 8px; font-size: 14px; color: var(--lc-ink); line-height: 1.35; }
.lc-add--icon { width: 32px; height: 32px; padding: 0; justify-content: center; flex-shrink: 0; }
.lc-add--icon .lc-add__t { display: none; }
.lc-add--icon .lc-add__ic { background: transparent; }
.lc-mrow__all { display: flex; align-items: center; gap: 6px; padding: 12px 16px 14px; font-size: 13.5px; color: var(--lc-primary); border-top: 1px solid var(--lc-line); }
.lc-mrow__cat { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 12px; padding: 14px; border-radius: 16px; border: 1px dashed var(--lc-line-2, var(--lc-line)); font-size: 14px; font-weight: 500; color: var(--lc-ink); }
.lc-msegs2 { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.lc-mseg2 { display: flex; flex-direction: column; gap: 10px; padding: 14px; border-radius: 16px; background: var(--lc-surface); border: 1px solid var(--lc-line); color: var(--lc-ink); font-size: 14px; font-weight: 500; line-height: 1.3; min-height: 92px; }
.lc-mseg2 svg { color: var(--lc-primary); }
.lc-mlinks { display: grid; gap: 0; border-radius: 18px; background: var(--lc-surface); border: 1px solid var(--lc-line); overflow: hidden; margin-top: 4px; }
.lc-mlinks a { display: flex; align-items: center; justify-content: space-between; padding: 15px 16px; font-size: 15px; color: var(--lc-ink); border-bottom: 1px solid var(--lc-line); }
.lc-mlinks li:last-child a { border-bottom: 0; }
.lc-mlinks a svg { color: var(--lc-faint); }
.lc-mcontact { margin-top: 14px; padding: 16px; border-radius: 18px; background: var(--lc-soft); display: grid; gap: 4px; font-size: 14px; }
.lc-mcontact p { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--lc-muted); margin-bottom: 4px; }
.lc-mcontact a { color: var(--lc-ink); }
.lc-nav--v2 .lc-nav__foot { display: flex; align-items: center; gap: 8px; }
.lc-nav--v2 .lc-nav__cta { flex: 1; }
.lc-nav--v2 .lc-nav__quick { display: flex; gap: 6px; margin: 0; }
.lc-nav--v2 .lc-nav__quick a { width: 48px; height: 48px; padding: 0; display: grid; place-items: center; border-radius: 50%; }
.lc-nav--v2.is-open [data-nav-default] > * { animation: kitIn .5s var(--lc-ease) both; }
.lc-nav--v2.is-open [data-nav-default] > :nth-child(2) { animation-delay: .05s; } .lc-nav--v2.is-open [data-nav-default] > :nth-child(3) { animation-delay: .1s; }
.lc-nav--v2.is-open .lc-mrows > li { animation: kitIn .5s var(--lc-ease) both; }
.lc-nav--v2.is-open .lc-mrows > li:nth-child(2) { animation-delay: .04s; } .lc-nav--v2.is-open .lc-mrows > li:nth-child(3) { animation-delay: .08s; } .lc-nav--v2.is-open .lc-mrows > li:nth-child(4) { animation-delay: .12s; } .lc-nav--v2.is-open .lc-mrows > li:nth-child(5) { animation-delay: .16s; } .lc-nav--v2.is-open .lc-mrows > li:nth-child(6) { animation-delay: .2s; } .lc-nav--v2.is-open .lc-mrows > li:nth-child(7) { animation-delay: .24s; }
[data-theme="dark"] .lc-mkit { background: #151926; }
[data-theme="dark"] .lc-nav--v2 .lc-mrow, [data-theme="dark"] .lc-mseg2, [data-theme="dark"] .lc-mlinks, [data-theme="dark"] .lc-mq a, [data-theme="dark"] .lc-mcart { background: rgba(255, 255, 255, .04); }
.lc-nav--v2 .lc-mq { margin-top: -6px; }
/* ================= sobre ================= */
.lc-man { position: relative; overflow: hidden; padding: clamp(28px, 5vw, 64px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); isolation: isolate; }
.lc-man__mark { position: absolute; right: -2%; bottom: -12%; z-index: -1; font: 600 clamp(140px, 22vw, 300px)/1 "Inter Tight", Inter, sans-serif; letter-spacing: .01em; color: var(--lc-ink); opacity: .04; pointer-events: none; }
.lc-man__mark i { font-style: normal; color: transparent; -webkit-text-stroke: 2px var(--lc-ink); }
.lc-man__big { margin-top: 14px; max-width: 880px; font-size: clamp(1.75rem, 3.6vw, 3rem); line-height: 1.1; font-weight: 500; letter-spacing: -.035em; color: var(--lc-ink); }
.lc-man__cols { display: grid; gap: 18px; margin-top: 28px; max-width: 980px; color: var(--lc-muted); font-size: 16px; line-height: 1.65; }
@media (min-width: 768px) { .lc-man__cols { grid-template-columns: 1fr 1fr; gap: 36px; } }
.lc-brandx { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
@media (min-width: 768px) { .lc-brandx { grid-template-columns: repeat(4, 1fr); gap: 14px; } }
.lc-brandx__l { position: relative; display: grid; align-content: space-between; min-height: 220px; padding: 22px; border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); overflow: hidden; }
.lc-brandx__l b { font: 600 clamp(84px, 10vw, 128px)/.9 "Inter Tight", Inter, sans-serif; color: var(--lc-ink); letter-spacing: -.02em; }
.lc-brandx__l--o b { color: transparent; -webkit-text-stroke: 1.4px var(--lc-ink); }
.lc-brandx__l small { font-size: 13px; color: var(--lc-muted); letter-spacing: .04em; text-transform: uppercase; }
.lc-brandx__l--x { background: #0b0d12; border-color: #0b0d12; }
.lc-brandx__l--x b { -webkit-text-stroke-color: #fff; } .lc-brandx__l--x small { color: rgba(255, 255, 255, .7); }
.lc-brandx__l--x svg { position: absolute; right: 18px; top: 18px; width: 54px; height: 54px; }
.lc-brandx__l--x path { fill: none; stroke: #8ea2ff; stroke-width: 3; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: 100; animation: brX 3.6s ease-in-out infinite; }
@keyframes brX { 0% { stroke-dashoffset: 100; } 40%, 70% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: -100; } }
.lc-commit { display: grid; grid-template-columns: 1fr; gap: 10px; }
@media (min-width: 768px) { .lc-commit { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1200px) { .lc-commit { grid-template-columns: repeat(4, 1fr); } }
.lc-commit li { padding: 24px; border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); display: grid; gap: 8px; align-content: start; transition: border-color .3s, transform .3s var(--lc-ease); }
.lc-commit li:hover { border-color: var(--lc-ink); transform: translateY(-2px); }
.lc-commit span { font-size: 13px; font-weight: 600; color: var(--lc-primary); }
.lc-commit strong { font-size: 18px; font-weight: 500; letter-spacing: -.01em; color: var(--lc-ink); }
.lc-commit p { font-size: 14.5px; color: var(--lc-muted); line-height: 1.55; }
.lc-cyc { display: grid; gap: 28px; padding: clamp(24px, 4vw, 48px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); }
@media (min-width: 1024px) { .lc-cyc { grid-template-columns: 1fr 1.1fr; gap: 56px; align-items: center; } }
.lc-cyc__bar { position: relative; display: flex; justify-content: space-between; font-size: 12px; color: var(--lc-muted); padding-bottom: 14px; }
.lc-cyc__bar u { position: absolute; left: 0; right: 0; bottom: 0; height: 6px; border-radius: 6px; background: var(--lc-soft); overflow: hidden; }
.lc-cyc__bar s { display: block; height: 100%; width: 0; border-radius: 6px; background: linear-gradient(90deg, var(--lc-primary), #7a5cff); animation: cycRun 8s linear infinite; }
@keyframes cycRun { to { width: 100%; } }
.lc-cyc__steps { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 18px; }
@media (min-width: 640px) { .lc-cyc__steps { grid-template-columns: repeat(4, 1fr); } }
.lc-cyc__steps li { padding: 14px; border-radius: 14px; border: 1px solid var(--lc-line); background: var(--lc-bg); display: grid; gap: 4px; animation: cycStep 8s linear infinite; animation-delay: calc(var(--i) * 2s); }
.lc-cyc__steps i { width: 10px; height: 10px; border-radius: 50%; background: var(--lc-line); margin-bottom: 6px; animation: cycDot 8s linear infinite; animation-delay: calc(var(--i) * 2s); }
.lc-cyc__steps strong { font-size: 14.5px; font-weight: 500; color: var(--lc-ink); } .lc-cyc__steps small { font-size: 12.5px; color: var(--lc-muted); }
@keyframes cycStep { 0%, 25% { border-color: var(--lc-primary); box-shadow: 0 12px 26px -18px rgba(61, 92, 255, .8); } 26%, 100% { border-color: var(--lc-line); box-shadow: none; } }
@keyframes cycDot { 0%, 25% { background: var(--lc-primary); box-shadow: 0 0 0 4px rgba(61, 92, 255, .18); } 26%, 100% { background: var(--lc-line); box-shadow: none; } }
.lc-fronts { display: grid; grid-template-columns: 1fr; gap: 8px; }
@media (min-width: 640px) { .lc-fronts { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .lc-fronts { grid-template-columns: repeat(4, 1fr); } }
.lc-front { display: flex; align-items: center; gap: 14px; padding: 18px; border-radius: 18px; background: var(--lc-surface); border: 1px solid var(--lc-line); color: var(--lc-ink); transition: border-color .25s; }
.lc-front:hover { border-color: var(--lc-ink); }
.lc-front > svg:first-child { color: var(--lc-primary); flex-shrink: 0; }
.lc-front span { flex: 1; display: grid; gap: 2px; } .lc-front strong { font-size: 15px; font-weight: 500; } .lc-front small { font-size: 12.5px; color: var(--lc-muted); }
.lc-front__go { color: var(--lc-faint); }
.lc-front--cta { background: var(--lc-ink); border-color: var(--lc-ink); color: var(--lc-bg); } .lc-front--cta small, .lc-front--cta .lc-front__go { color: inherit; opacity: .7; }
.lc-segtiles { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; }
@media (min-width: 768px) { .lc-segtiles { grid-template-columns: repeat(4, 1fr); } }
@media (prefers-reduced-motion: reduce) { .lc-cyc__bar s, .lc-cyc__steps li, .lc-cyc__steps i, .lc-brandx__l--x path { animation: none; } .lc-brandx__l--x path { stroke-dashoffset: 0; } }
/* ================= marca LCTX discreta ================= */
.lc-kit, .lc-ms, .lc-fcta, .lc-cta--home, .lc-ai4 { position: relative; overflow: hidden; isolation: isolate; }
.lc-wm { position: absolute; right: clamp(-10px, -1vw, 0px); bottom: -.18em; z-index: -1; pointer-events: none; user-select: none; font: 600 clamp(110px, 16vw, 230px)/1 "Inter Tight", Inter, system-ui, sans-serif; letter-spacing: .01em; color: var(--lc-ink); opacity: .035; white-space: nowrap; }
.lc-wm i { font-style: normal; color: transparent; -webkit-text-stroke: 1.5px currentColor; }
.lc-wm--dark { color: #fff; opacity: .05; }
.lc-wm--tl { right: auto; left: -.04em; bottom: auto; top: -.22em; }
.lc-wm--c { right: 50%; transform: translateX(50%); bottom: -.3em; opacity: .045; }
.lc-kit > .lc-wm { font-size: clamp(90px, 12vw, 180px); bottom: -.2em; }
.lc-kit > .lc-kit__tabs, .lc-kit > .lc-kit__panel { position: relative; }
@media (max-width: 767px) { .lc-wm { font-size: 96px; } }
[data-theme="dark"] .lc-wm:not(.lc-wm--dark) { color: #fff; opacity: .04; }
.lc-wm { opacity: .045; bottom: -.14em; }
.lc-wm i { -webkit-text-stroke-width: 2px; }
.lc-wm--dark { opacity: .07; }
.lc-wm--tl { left: auto; top: auto; right: 2%; bottom: -.16em; }
.lc-wm--c { bottom: -.24em; }
.lc-wm i { -webkit-text-stroke-color: var(--lc-ink); }
.lc-wm--dark i, [data-theme="dark"] .lc-wm i { -webkit-text-stroke-color: #fff; }
.lc-kit__all { background: #3d5cff; } [data-theme="dark"] .lc-kit__all { background: #4561ff; }
/* ================= menu mobile v3 ================= */
@media (max-width: 1279px) { header .lc-cartbtn { display: none; } }
.lc-cart { z-index: 130; }
.lc-nav--v3 .lc-nav__scroll { padding-top: 4px; }
.lc-mmain.is-back, .lc-msub.is-in { animation: msIn .42s var(--lc-ease) both; }
.lc-mmain.is-back { animation-name: msBack; }
@keyframes msIn { from { opacity: 0; transform: translateX(28px); } }
@keyframes msBack { from { opacity: 0; transform: translateX(-28px); } }
/* card animado da proposta */
.lc-mbag { position: relative; display: grid; grid-template-columns: 1fr 92px; gap: 12px; align-items: center; margin-top: 2px; padding: 18px; border-radius: 22px; overflow: hidden; background: #0b0d12; color: #fff; isolation: isolate; }
.lc-mbag::before { content: ""; position: absolute; right: -20%; top: -50%; width: 80%; height: 200%; z-index: -1; background: radial-gradient(closest-side, rgba(61, 92, 255, .6), transparent); animation: mbGlow 6s ease-in-out infinite alternate; }
@keyframes mbGlow { to { transform: translate(-12%, 10%); } }
.lc-mbag__k { font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: rgba(255, 255, 255, .55); }
.lc-mbag strong { display: block; margin-top: 4px; font-size: 18px; font-weight: 500; letter-spacing: -.015em; }
.lc-mbag small { display: block; margin-top: 4px; font-size: 12.5px; line-height: 1.45; color: rgba(255, 255, 255, .62); }
.lc-mbag__act { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 14px; }
.lc-mbag__btn { display: inline-flex; align-items: center; gap: 7px; height: 38px; padding: 0 14px 0 12px; border-radius: 99px; border: 0; background: #fff; color: #0b0d12; font-size: 13.5px; font-weight: 500; cursor: pointer; }
.lc-mbag__btn svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.lc-mbag__btn b { min-width: 18px; height: 18px; padding: 0 5px; border-radius: 99px; background: #3d5cff; color: #fff; font-size: 11px; line-height: 18px; text-align: center; }
.lc-mbag__btn b[hidden] { display: none; }
.lc-mbag__lnk { font-size: 13px; color: rgba(255, 255, 255, .8); text-decoration: underline; text-underline-offset: 3px; }
.lc-mbag__vis { position: relative; height: 112px; }
.lc-mbag__bag { position: absolute; left: 50%; bottom: 6px; width: 56px; height: 56px; margin-left: -28px; display: grid; place-items: center; border-radius: 18px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .16); animation: mbBag 3.6s ease-in-out infinite; }
.lc-mbag__bag svg { width: 26px; height: 26px; fill: none; stroke: #fff; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.lc-mbag__ring { position: absolute; left: 50%; bottom: 6px; width: 56px; height: 56px; margin-left: -28px; border-radius: 18px; border: 1px solid #8ea2ff; opacity: 0; animation: mbRing 3.6s ease-out infinite; }
.lc-mbag__chip { position: absolute; left: 50%; top: 0; transform: translateX(-50%); padding: 4px 9px; border-radius: 99px; background: #3d5cff; color: #fff; font-style: normal; font-size: 10.5px; font-weight: 600; opacity: 0; animation: mbChip 3.6s cubic-bezier(.5, 0, .5, 1) infinite; animation-delay: calc(var(--i) * 1.2s); }
.lc-mbag__chip:nth-child(2) { background: #22c08a; } .lc-mbag__chip:nth-child(3) { background: #7a5cff; }
@keyframes mbChip { 0% { opacity: 0; transform: translate(-50%, -6px) scale(.9); } 12% { opacity: 1; transform: translate(-50%, 4px) scale(1); } 30% { opacity: 1; transform: translate(-50%, 18px); } 42% { opacity: 0; transform: translate(-50%, 58px) scale(.6); } 100% { opacity: 0; transform: translate(-50%, 58px) scale(.6); } }
@keyframes mbBag { 0%, 8%, 100% { transform: none; } 12% { transform: scale(1.08) rotate(-4deg); } 18% { transform: scale(1); } }
@keyframes mbRing { 0%, 9% { opacity: 0; transform: scale(1); } 12% { opacity: .9; } 30% { opacity: 0; transform: scale(1.5); } 100% { opacity: 0; } }
/* grade de frentes */
.lc-mtiles { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.lc-mt { width: 100%; display: grid; gap: 4px; align-content: start; padding: 14px; min-height: 118px; border-radius: 18px; border: 1px solid var(--lc-line); background: var(--lc-surface); text-align: left; color: var(--lc-ink); cursor: pointer; transition: transform .2s, border-color .25s; }
.lc-mt:active { transform: scale(.97); }
.lc-mt__ic { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 8px; border-radius: 13px; color: #fff; background: linear-gradient(135deg, hsl(var(--h) 85% 60%), hsl(calc(var(--h) + 30) 80% 52%)); box-shadow: 0 10px 20px -12px hsl(var(--h) 80% 45%); }
.lc-mt__ic svg { width: 21px; height: 21px; }
.lc-mt strong { font-size: 14.5px; font-weight: 500; line-height: 1.25; }
.lc-mt small { font-size: 12px; color: var(--lc-muted); }
.lc-mt--all { background: var(--lc-ink); border-color: var(--lc-ink); color: var(--lc-bg); }
.lc-mt--all .lc-mt__ic { background: rgba(255, 255, 255, .14); box-shadow: none; } .lc-mt--all small { color: inherit; opacity: .65; }
.lc-nav--v3.is-open .lc-mtiles > li { animation: kitIn .5s var(--lc-ease) both; animation-delay: calc(.08s + var(--i) * 40ms); }
.lc-nav--v3.is-open .lc-mt__ic svg { animation: mtIc .6s var(--lc-ease) both; animation-delay: calc(.2s + var(--i) * 40ms); }
@keyframes mtIc { from { transform: scale(.4) rotate(-20deg); opacity: 0; } }
/* segmentos */
.lc-msegs3 { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 -16px; padding: 0 16px 2px; }
.lc-msegs3::-webkit-scrollbar { display: none; }
.lc-mseg3 { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 14px 0 12px; border-radius: 99px; border: 1px solid var(--lc-line); background: var(--lc-surface); color: var(--lc-ink); font-size: 13.5px; white-space: nowrap; }
.lc-mseg3 svg { color: var(--lc-primary); }
/* links da empresa */
.lc-ml { border-radius: 18px; border: 1px solid var(--lc-line); background: var(--lc-surface); overflow: hidden; }
.lc-ml a { display: flex; align-items: center; gap: 12px; padding: 12px 14px; color: var(--lc-ink); font-size: 15px; border-bottom: 1px solid var(--lc-line); }
.lc-ml li:last-child a { border-bottom: 0; }
.lc-ml__ic { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 10px; background: var(--lc-soft); color: var(--lc-primary); flex-shrink: 0; }
.lc-ml a > span:nth-child(2) { flex: 1; }
.lc-ml__go { color: var(--lc-faint); }
/* subpainel */
.lc-msub[hidden] { display: none; }
.lc-msub__back { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 12px 0 8px; border-radius: 99px; border: 1px solid var(--lc-line); background: var(--lc-surface); color: var(--lc-ink); font-size: 13.5px; cursor: pointer; }
.lc-msub__head { display: flex; gap: 14px; align-items: flex-start; margin: 16px 0 14px; }
.lc-msub__head .lc-mt__ic { flex-shrink: 0; margin: 0; }
.lc-msub__head h2 { font-size: 21px; font-weight: 500; letter-spacing: -.02em; color: var(--lc-ink); }
.lc-msub__head p { margin-top: 4px; font-size: 13.5px; color: var(--lc-muted); line-height: 1.5; }
.lc-msub__list { border-radius: 18px; border: 1px solid var(--lc-line); background: var(--lc-surface); overflow: hidden; }
.lc-msub__list li { display: flex; align-items: center; gap: 6px; padding-right: 10px; border-bottom: 1px solid var(--lc-line); animation: kitIn .45s var(--lc-ease) both; animation-delay: calc(var(--i) * 30ms); }
.lc-msub__list li:last-child { border-bottom: 0; }
.lc-msub__list a { flex: 1; display: flex; align-items: center; gap: 12px; padding: 13px 8px 13px 14px; color: var(--lc-ink); font-size: 14.5px; line-height: 1.3; }
.lc-msub__list a svg { color: hsl(var(--h) 70% 50%); flex-shrink: 0; }
.lc-msub__all { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 12px; padding: 14px; border-radius: 16px; background: var(--lc-ink); color: var(--lc-bg); font-size: 14.5px; font-weight: 500; }
.lc-nav--v3 .lc-nav__foot { display: flex; align-items: center; gap: 8px; }
.lc-nav--v3 .lc-nav__cta { flex: 1; }
.lc-nav--v3 .lc-nav__quick { display: flex; gap: 6px; margin: 0; }
.lc-nav--v3 .lc-nav__quick a { width: 48px; height: 48px; padding: 0; display: grid; place-items: center; border-radius: 50%; }
[data-theme="dark"] .lc-mbag { background: #151926; }
[data-theme="dark"] .lc-mt:not(.lc-mt--all), [data-theme="dark"] .lc-mseg3, [data-theme="dark"] .lc-ml, [data-theme="dark"] .lc-msub__list, [data-theme="dark"] .lc-msub__back { background: rgba(255, 255, 255, .04); }
@media (prefers-reduced-motion: reduce) { .lc-mbag *, .lc-mbag::before, .lc-nav--v3 * { animation: none !important; } .lc-mbag__chip { display: none; } }
/* menu mobile v3.1 — sem borda, ícones pretos animados */
@media (max-width: 639px) { .lc-nav--v3 .lc-nav__sheet { inset: 0; border-radius: 0; border: 0; box-shadow: none; } }
.lc-nav--v3 .lc-nav__sheet { border: 0; }
[data-theme="dark"] .lc-nav--v3 .lc-nav__sheet { box-shadow: none; }
.lc-mt__ic { color: #fff; background: #0b0d12; box-shadow: 0 10px 22px -14px rgba(11, 13, 18, .7); }
.lc-mt__ic svg { animation: mtBob 3.2s ease-in-out infinite; animation-delay: calc(var(--i, 0) * -.45s); }
@keyframes mtBob { 0%, 100% { transform: translateY(0) rotate(0); } 25% { transform: translateY(-2px) rotate(-6deg); } 50% { transform: translateY(0) rotate(0); } 75% { transform: translateY(1px) rotate(5deg); } }
.lc-nav--v3.is-open .lc-mt__ic svg { animation: mtIc .6s var(--lc-ease) both, mtBob 3.2s ease-in-out .8s infinite; }
.lc-mt:active .lc-mt__ic { transform: scale(.92); }
.lc-mt__ic { transition: transform .2s; }
.lc-mt--all .lc-mt__ic { background: rgba(255, 255, 255, .14); }
.lc-msub__head .lc-mt__ic svg { animation: mtBob 3.2s ease-in-out infinite; }
.lc-msub__list a svg { color: var(--lc-ink); }
.lc-ml__ic { background: var(--lc-ink); color: var(--lc-bg); }
.lc-mseg3 svg { color: var(--lc-ink); }
[data-theme="dark"] .lc-mt__ic { background: #fff; color: #0b0d12; box-shadow: none; }
[data-theme="dark"] .lc-mt--all .lc-mt__ic { background: rgba(255, 255, 255, .14); color: #fff; }
[data-theme="dark"] .lc-mt--all .lc-mt__ic { background: rgba(127, 127, 127, .18); color: var(--lc-bg); }
/* destaque da home: controles com setas + deslizar */
.dv-ctrl { display: flex; align-items: center; gap: 8px; margin-top: clamp(26px, 4vw, 40px); }
.dv-ctrl .dv-lbls { flex: 1; min-width: 0; flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; scrollbar-width: none; margin-top: 0; padding: 4px 2px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 14px, #000 calc(100% - 14px), transparent); mask-image: linear-gradient(90deg, transparent, #000 14px, #000 calc(100% - 14px), transparent); }
.dv-ctrl .dv-lbls::-webkit-scrollbar { display: none; }
button.dv-lbl { flex: 0 0 auto; background: none; font: inherit; font-size: 13px; white-space: nowrap; }
.dv-arr { flex: 0 0 38px; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--lc-line); background: var(--lc-surface); color: var(--lc-ink); cursor: pointer; transition: border-color .25s, transform .2s; }
.dv-arr:hover { border-color: var(--lc-ink); } .dv-arr:active { transform: scale(.94); }
.dv-arr svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.lc-home-hero--dv .dv-stage { cursor: grab; }
.lc-home-hero--dv .dv-stage:active { cursor: grabbing; }
@media (max-width: 640px) {
  .dv-ctrl { margin-top: 30px; gap: 6px; }
  .dv-ctrl .dv-lbls { justify-content: center; -webkit-mask-image: none; mask-image: none; }
  button.dv-lbl:not(.is-on) span { display: none; }
  button.dv-lbl { font-size: 12px; }
  .dv-arr { flex-basis: 34px; width: 34px; height: 34px; }
}
.dv-stage { -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
.dv-stage img, .dv-stage svg { -webkit-user-drag: none; }
@media (max-width: 640px) { .dv-ctrl .dv-lbls { justify-content: flex-start; } .dv-ctrl .dv-lbls > :first-child { margin-left: auto; } .dv-ctrl .dv-lbls > :last-child { margin-right: auto; } }
/* ================= segmento: gestão patrimonial ================= */
.pt-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.pt-pills span { font-size: 12.5px; padding: 6px 12px; border-radius: 99px; border: 1px solid var(--lc-line); background: var(--lc-surface); color: var(--lc-ink); }
@media (max-width: 1023px) { .pt-pills { justify-content: center; } }
.pt-ctx { display: grid; gap: 32px; }
@media (min-width: 1024px) { .pt-ctx { grid-template-columns: 1.15fr 1fr; gap: 64px; align-items: start; } }
.pt-who { display: grid; gap: 10px; }
.pt-who li { display: flex; gap: 14px; align-items: flex-start; padding: 16px; border-radius: 18px; background: var(--lc-surface); border: 1px solid var(--lc-line); }
.pt-who strong { display: block; font-weight: 500; font-size: 15.5px; color: var(--lc-ink); } .pt-who span { font-size: 13.5px; color: var(--lc-muted); }
/* mapa */
.pt-map { display: grid; gap: 18px; padding: clamp(18px, 3vw, 32px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); }
@media (min-width: 1024px) { .pt-map { grid-template-columns: 1.25fr 1fr; gap: 32px; align-items: center; } }
.pt-tree { display: grid; justify-items: center; }
.pt-root span, .pt-hold span { display: inline-block; padding: 10px 18px; border-radius: 14px; font-size: 14px; font-weight: 500; }
.pt-root span { background: #0b0d12; color: #fff; }
.pt-root i { display: block; width: 2px; height: 22px; margin: 0 auto; background: linear-gradient(var(--lc-ink), var(--lc-line)); }
.pt-hold span { border: 1px dashed var(--lc-ink); color: var(--lc-ink); background: var(--lc-bg); }
.pt-lines { width: 100%; height: 34px; } .pt-lines path { fill: none; stroke: var(--lc-line-2, #cfd5df); stroke-width: 1.5; vector-effect: non-scaling-stroke; stroke-dasharray: 4 4; animation: ptDash 1.2s linear infinite; }
@keyframes ptDash { to { stroke-dashoffset: -16; } }
.pt-nodes { width: 100%; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.pt-node { display: grid; gap: 3px; justify-items: start; text-align: left; padding: 14px; border-radius: 16px; border: 1px solid var(--lc-line); background: var(--lc-bg); color: var(--lc-ink); cursor: pointer; transition: border-color .25s, box-shadow .3s, transform .3s var(--lc-ease); }
.pt-node b { font-size: 14px; font-weight: 500; line-height: 1.25; } .pt-node small { font-size: 12px; color: var(--lc-muted); }
.pt-node__dots { display: flex; gap: 5px; margin-top: 8px; } .pt-node__dots i { width: 10px; height: 10px; border-radius: 3px; background: #22c08a; } .pt-node__dots i.is-warn { background: #f0a020; }
.pt-node[aria-selected="true"] { border-color: var(--lc-ink); box-shadow: 0 16px 30px -22px rgba(10, 14, 30, .55); transform: translateY(-3px); }
@media (max-width: 560px) { .pt-node { padding: 11px; } .pt-node b { font-size: 12.5px; } .pt-node small { display: none; } }
.pt-panel { padding: 20px; border-radius: 18px; background: var(--lc-bg); border: 1px solid var(--lc-line); animation: kitIn .45s var(--lc-ease) both; }
.pt-panel[hidden] { display: none; }
.pt-panel__h { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 12px; } .pt-panel__h b { font-size: 17px; font-weight: 500; color: var(--lc-ink); } .pt-panel__h span { font-size: 12.5px; color: var(--lc-muted); }
.pt-panel ul { display: grid; gap: 8px; }
.pt-panel li { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; background: var(--lc-surface); border: 1px solid var(--lc-line); animation: kitIn .45s var(--lc-ease) both; animation-delay: calc(var(--i) * 70ms); }
.pt-panel li div { flex: 1; min-width: 0; } .pt-panel strong { display: block; font-size: 14px; font-weight: 500; color: var(--lc-ink); } .pt-panel small { font-size: 12px; color: var(--lc-muted); }
.pt-panel em { font-style: normal; font-size: 11.5px; padding: 4px 9px; border-radius: 99px; white-space: nowrap; }
.pt-panel em.is-ok { background: rgba(34, 192, 138, .12); color: #0f7a55; } .pt-panel em.is-warn { background: rgba(240, 160, 32, .14); color: #9a6400; }
.pt-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; } .pt-dot.is-ok { background: #22c08a; } .pt-dot.is-warn { background: #f0a020; box-shadow: 0 0 0 4px rgba(240, 160, 32, .18); animation: gxBeat 1.8s ease-in-out infinite; }
/* desafios */
.pt-dark { padding: clamp(28px, 5vw, 56px); }
.pt-ch { display: grid; gap: 10px; margin-top: 28px; }
@media (min-width: 768px) { .pt-ch { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1200px) { .pt-ch { grid-template-columns: repeat(5, 1fr); } }
.pt-ch li { padding: 20px; border-radius: 18px; background: rgba(255, 255, 255, .04); border: 1px solid rgba(255, 255, 255, .08); display: grid; gap: 8px; align-content: start; }
.pt-ch span { font-size: 12px; font-weight: 600; color: #8ea2ff; } .pt-ch strong { font-size: 16px; font-weight: 500; color: #fff; } .pt-ch p { font-size: 13.5px; line-height: 1.55; color: rgba(255, 255, 255, .62); }
/* blocos divididos */
.pt-split { display: grid; gap: 32px; align-items: center; }
@media (min-width: 1024px) { .pt-split { grid-template-columns: 1fr 1.05fr; gap: 64px; } .pt-split--r > :first-child { order: 2; } }
.pt-checks { display: grid; gap: 10px; } .pt-checks li { position: relative; padding-left: 28px; font-size: 15px; color: var(--lc-ink); }
.pt-checks li::before { content: ""; position: absolute; left: 0; top: 3px; width: 18px; height: 18px; border-radius: 50%; background: #0b0d12; }
.pt-checks li::after { content: ""; position: absolute; left: 6px; top: 7px; width: 6px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.pt-ob { padding: clamp(18px, 3vw, 28px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); }
.pt-ob__h { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 14px; } .pt-ob__h b { font-weight: 500; font-size: 16px; color: var(--lc-ink); } .pt-ob__h span { font-size: 12px; color: var(--lc-muted); }
.pt-ob ul { display: grid; gap: 10px; }
.pt-ob li { display: grid; gap: 8px; padding: 14px; border-radius: 14px; background: var(--lc-bg); border: 1px solid var(--lc-line); }
.pt-ob li div { display: flex; justify-content: space-between; gap: 10px; } .pt-ob strong { font-size: 14px; font-weight: 500; color: var(--lc-ink); } .pt-ob small { font-size: 12.5px; color: var(--lc-muted); white-space: nowrap; }
.pt-ob u { height: 6px; border-radius: 6px; background: var(--lc-soft); overflow: hidden; }
.pt-ob s { display: block; height: 100%; width: 0; border-radius: 6px; background: #0b0d12; animation: ptBar 1.4s var(--lc-ease) forwards; animation-delay: calc(.2s + var(--i) * .12s); }
.pt-ob s.is-warn { background: #f0a020; } .pt-ob s.is-info { background: var(--lc-primary); }
@keyframes ptBar { to { width: var(--p); } }
.lv-on .pt-ob s, .pt-ob s { animation-play-state: running; }
/* consolidação */
.pt-flow { display: grid; gap: 12px; align-items: center; padding: clamp(18px, 3vw, 32px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); }
@media (min-width: 1024px) { .pt-flow { grid-template-columns: 1.1fr 70px .8fr 70px 1.1fr; } }
.pt-flow__src { display: grid; gap: 6px; } .pt-flow__src li { padding: 11px 14px; border-radius: 12px; background: var(--lc-bg); border: 1px solid var(--lc-line); font-size: 14px; color: var(--lc-ink); animation: ptSrc 4s ease-in-out infinite; animation-delay: calc(var(--i) * .5s); }
@keyframes ptSrc { 0%, 70%, 100% { border-color: var(--lc-line); } 10% { border-color: var(--lc-ink); } }
.pt-flow__pipe { position: relative; height: 46px; display: flex; flex-direction: column; justify-content: space-evenly; overflow: hidden; }
@media (min-width: 1024px) { .pt-flow__pipe { height: 120px; } }
.pt-flow__pipe i { position: relative; height: 2px; background: var(--lc-line); overflow: hidden; }
.pt-flow__pipe i::after { content: ""; position: absolute; top: 0; left: -30%; width: 30%; height: 100%; background: linear-gradient(90deg, transparent, var(--lc-ink)); animation: ptFlow 1.8s linear infinite; }
.pt-flow__pipe i:nth-child(2)::after { animation-delay: -.6s; } .pt-flow__pipe i:nth-child(3)::after { animation-delay: -1.2s; }
@keyframes ptFlow { to { left: 100%; } }
@media (max-width: 1023px) { .pt-flow__pipe { flex-direction: row; justify-content: center; gap: 18px; } .pt-flow__pipe i { width: 2px; height: 100%; } .pt-flow__pipe i::after { left: 0; top: -30%; width: 100%; height: 30%; background: linear-gradient(transparent, var(--lc-ink)); animation-name: ptFlowV; } }
@keyframes ptFlowV { to { top: 100%; } }
.pt-flow__core { display: grid; place-content: center; text-align: center; gap: 4px; padding: 26px 18px; border-radius: 20px; background: #0b0d12; color: #fff; box-shadow: 0 24px 50px -28px rgba(11, 13, 18, .8); }
.pt-flow__core b { font-weight: 500; font-size: 17px; } .pt-flow__core small { font-size: 12.5px; color: rgba(255, 255, 255, .6); }
.pt-flow__out { display: grid; gap: 8px; } .pt-flow__out div { padding: 14px 16px; border-radius: 14px; border: 1px solid var(--lc-line); background: var(--lc-bg); }
.pt-flow__out b { display: block; font-weight: 500; font-size: 15px; color: var(--lc-ink); } .pt-flow__out small { font-size: 12.5px; color: var(--lc-muted); }
/* matriz de acesso */
.pt-mx { padding: clamp(16px, 3vw, 28px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-line); overflow-x: auto; }
.pt-mx table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 420px; }
.pt-mx th { font-weight: 500; color: var(--lc-ink); text-align: left; padding: 12px 8px; border-bottom: 1px solid var(--lc-line); }
.pt-mx thead th { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--lc-muted); text-align: center; }
.pt-mx td { text-align: center; padding: 12px 8px; border-bottom: 1px solid var(--lc-line); }
.pt-mx tr:last-child th, .pt-mx tr:last-child td { border-bottom: 0; }
.pt-mx i { display: inline-block; width: 22px; height: 22px; border-radius: 50%; position: relative; vertical-align: middle; }
.pt-mx i.is-y { background: #0b0d12; } .pt-mx i.is-y::after { content: ""; position: absolute; left: 8px; top: 5px; width: 5px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.pt-mx i.is-n { border: 1px solid var(--lc-line); } .pt-mx i.is-n::after { content: ""; position: absolute; left: 6px; right: 6px; top: 10px; height: 1.5px; background: var(--lc-faint); }
.pt-mx p { margin-top: 12px; font-size: 12.5px; color: var(--lc-muted); }
[data-theme="dark"] .pt-mx i.is-y, [data-theme="dark"] .pt-checks li::before { background: #fff; } [data-theme="dark"] .pt-mx i.is-y::after, [data-theme="dark"] .pt-checks li::after { border-color: #0b0d12; }
/* jornada */
.pt-jr { display: grid; gap: 10px; counter-reset: j; }
@media (min-width: 768px) { .pt-jr { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1200px) { .pt-jr { grid-template-columns: repeat(3, 1fr); } }
.pt-jr li { position: relative; padding: 22px; border-radius: 20px; background: var(--lc-surface); border: 1px solid var(--lc-line); display: grid; gap: 8px; align-content: start; }
.pt-jr__n { font-size: 12px; font-weight: 600; color: var(--lc-primary); } .pt-jr strong { font-size: 17px; font-weight: 500; color: var(--lc-ink); } .pt-jr p { font-size: 14px; color: var(--lc-muted); line-height: 1.55; }
.pt-jr__s { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; } .pt-jr__s a { font-size: 12.5px; padding: 5px 10px; border-radius: 99px; background: var(--lc-soft); color: var(--lc-ink); }
.pt-kit { display: grid; gap: 18px; align-items: center; padding: clamp(22px, 4vw, 36px); border-radius: var(--lc-r-lg); background: var(--lc-surface); border: 1px solid var(--lc-ink); }
@media (min-width: 1024px) { .pt-kit { grid-template-columns: 1fr auto; } }
@media (prefers-reduced-motion: reduce) { .pt-lines path, .pt-flow__pipe i::after, .pt-flow__src li, .pt-dot.is-warn { animation: none; } .pt-ob s { animation: none; width: var(--p); } }
[data-theme="dark"] .pt-panel em.is-ok { color: #5fd3a8; } [data-theme="dark"] .pt-panel em.is-warn { color: #f0c063; }
[data-theme="dark"] .lc-notice p { color: #f0d9a8; }
[data-theme="dark"] .lc-notice p { color: #f0d9a8 !important; } [data-theme="dark"] .lc-notice { border-color: rgba(240, 192, 99, .25); }
.lc-fq > *, .lc-fq__main, .lc-fq__side, .lc-fq__g, .lc-q, .lc-q summary { min-width: 0; } .lc-q__t { min-width: 0; overflow-wrap: anywhere; } .lc-q__a { overflow-wrap: anywhere; }

/* ---------- v36: itens desativados, /link editável, posts do blog ---------- */
[data-sec][hidden] { display: none !important; }
.lc-offbar { position: relative; z-index: 3; margin: 0 auto; padding: 12px 20px; text-align: center; font-size: .95rem; background: #fff3df; color: #6b4300; border-bottom: 1px solid #f3d39b; }
.lc-offbar a { color: inherit; font-weight: 600; text-decoration: underline; }
.gx-arr { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.gx-ic--link .gx-comet { animation-duration: 3.2s; }
.lc-posts__h { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 24px; flex-wrap: wrap; }
.lc-post__ph { display: grid; place-items: center; width: 100%; aspect-ratio: 16 / 9; background: radial-gradient(120% 120% at 20% 0%, #26304d 0, #0b0d12 70%); color: #fff; font-size: clamp(2rem, 5vw, 3rem); font-weight: 600; letter-spacing: -.03em; }
.lc-post__ph i { font-style: normal; color: #7b8dff; }
.lc-post__hero { padding-bottom: 40px; }
.lc-post__head { max-width: 820px; margin: 0 auto; text-align: center; display: grid; gap: 14px; justify-items: center; }
.lc-post__back { font-size: .9rem; color: var(--lc-muted, #5d6676); text-decoration: none; }
.lc-post__back:hover { color: var(--lc-ink, #0b0d12); }
.lc-post__meta { font-size: .92rem; color: var(--lc-muted, #5d6676); }
.lc-post { max-width: 820px; margin: 0 auto; display: grid; gap: 40px; }
.lc-post__cover { margin: 0; border-radius: 20px; overflow: hidden; border: 1px solid rgba(11, 13, 18, .08); }
.lc-post__cover img { display: block; width: 100%; height: auto; }
.lc-post__body img { max-width: 100%; height: auto; border-radius: 14px; }
.lc-post__body figure { margin: 32px 0; }
.lc-post__body blockquote { margin: 28px 0; padding: 4px 0 4px 20px; border-left: 3px solid #3d5cff; font-size: 1.12rem; }
.lc-post__body p { margin-top: 16px; }
.lc-post__cta { display: grid; gap: 10px; justify-items: start; padding: 32px; border-radius: 20px; background: #0b0d12; color: #fff; }
.lc-post__cta .lc-kicker { color: #9aa6ff; }
.lc-post__ctat { font-size: clamp(1.3rem, 2.4vw, 1.7rem); font-weight: 500; letter-spacing: -.015em; }
.lc-post__btn { display: inline-flex; align-items: center; min-height: 46px; padding: 10px 22px; border-radius: 999px; background: #fff; color: #0b0d12; font-weight: 600; text-decoration: none; }
.lc-post__btn:hover { background: #e8ecff; }
.lc-post__draft { position: sticky; top: 0; z-index: 40; padding: 10px; text-align: center; background: #fff3df; color: #6b4300; font-weight: 600; }
@media (max-width: 640px) { .lc-post__cta { padding: 24px; } .lc-post { gap: 28px; } }
html[data-theme="dark"] .lc-offbar { background: #3a2a0c; color: #ffd99a; border-color: #5a4314; }
html[data-theme="dark"] .lc-post__cover { border-color: rgba(255, 255, 255, .1); }

/* ================= /link v9 — biblioteca de ícones e componentes ================= */
.gx { --gk: #0b0d12; --gm: #5a6275; --gs: #fff; --gl: rgba(11, 13, 18, .08); --gt: rgba(11, 13, 18, .07); --ga: #3d5cff; --ga2: rgba(61, 92, 255, .14); --gg: #22c08a; --gg2: rgba(34, 192, 138, .14); }
.lk-dark .gx { --gk: #fff; --gm: rgba(232, 235, 245, .62); --gs: rgba(255, 255, 255, .06); --gl: rgba(255, 255, 255, .12); --gt: rgba(255, 255, 255, .1); --ga: #8ea2ff; --ga2: rgba(142, 162, 255, .18); --gg: #6fdc9a; --gg2: rgba(111, 220, 154, .16); }
/* ícones novos: cor herdada do bloco (branco no claro, preto no escuro) */
.gx-ic { color: #fff; } .lk-dark .gx-ic { color: #0b0d12; }
.gx-ic .gx-dot { transform-box: fill-box; transform-origin: center; animation: gxDot 1.4s ease-in-out infinite; animation-delay: var(--d); }
@keyframes gxDot { 0%, 60%, 100% { transform: translateY(0); opacity: .45; } 30% { transform: translateY(-3px); opacity: 1; } }
.gx-ic .gx-lens { transform-box: fill-box; transform-origin: center; animation: gxLens 2.6s ease-in-out infinite; } @keyframes gxLens { 0%, 100% { transform: scale(1); } 45% { transform: scale(.72); } 55% { transform: scale(1.08); } }
.gx-ic .gx-tri { fill: currentColor; stroke: none; transform-box: fill-box; transform-origin: 40% 50%; animation: gxTri 2s ease-in-out infinite; } @keyframes gxTri { 50% { transform: scale(1.18); } }
.gx-ic .gx-lines { stroke-dasharray: 20; stroke-dashoffset: 20; animation: gxLines 3.4s ease-in-out infinite; } @keyframes gxLines { 0% { stroke-dashoffset: 20; } 40%, 85% { stroke-dashoffset: 0; } 100% { stroke-dashoffset: 20; opacity: 0; } }
.gx-ic .gx-flap { transform-box: fill-box; transform-origin: 50% 0; animation: gxFlap 3s ease-in-out infinite; } @keyframes gxFlap { 0%, 100% { transform: scaleY(1); } 45%, 60% { transform: scaleY(-.35); } }
.gx-ic .gx-bob { animation: gxBob 2.4s ease-in-out infinite; } @keyframes gxBob { 50% { transform: translateY(-3px); } }
.gx-ic .gx-ring { transform-box: fill-box; transform-origin: center; animation: gxRingS 2.4s ease-in-out infinite; } @keyframes gxRingS { 50% { transform: scaleX(.7); opacity: .5; } }
.gx-ic .gx-scan { animation: gxScan 4s ease-in-out infinite; } @keyframes gxScan { 0%, 100% { transform: translate(0, 0); } 30% { transform: translate(3px, -2px); } 65% { transform: translate(-2px, 2px); } }
.gx-ic .gx-mini { fill: currentColor; stroke: none; opacity: .35; }
.gx-ic .gx-spark { fill: none; transform-box: fill-box; transform-origin: center; animation: gxSpk 3s ease-in-out infinite; } @keyframes gxSpk { 0%, 100% { transform: rotate(0) scale(1); } 50% { transform: rotate(45deg) scale(.86); fill: currentColor; } }
.gx-ic .gx-twinkle { transform-box: fill-box; transform-origin: center; animation: gxTw 3s ease-in-out infinite; } @keyframes gxTw { 0%, 30%, 100% { transform: scale(0); } 55% { transform: scale(1.15); } 70% { transform: scale(1); } }
.gx-ic .gx-wave { animation: gxWave 1.6s ease-in-out infinite; } @keyframes gxWave { 0%, 100% { opacity: .15; } 50% { opacity: 1; } }
.gx-ic .gx-ring2 { animation: gxComet 2.6s linear infinite, gxShake 2.6s ease-in-out infinite; transform-origin: 24px 24px; } @keyframes gxShake { 0%, 70%, 100% { transform: rotate(0); } 75% { transform: rotate(-7deg); } 85% { transform: rotate(6deg); } }
.gx-ic .gx-screen { fill: currentColor; stroke: none; opacity: .25; animation: gxScreen 2.4s steps(1) infinite; } @keyframes gxScreen { 50% { opacity: .85; } }
.gx-ic .gx-keys circle { fill: currentColor; stroke: none; opacity: .45; animation: gxKeyP 2.7s ease-in-out infinite; }
.gx-ic .gx-keys circle:nth-child(2) { animation-delay: .3s; } .gx-ic .gx-keys circle:nth-child(5) { animation-delay: .6s; } .gx-ic .gx-keys circle:nth-child(9) { animation-delay: .9s; } .gx-ic .gx-keys circle:nth-child(4) { animation-delay: 1.2s; } .gx-ic .gx-keys circle:nth-child(7) { animation-delay: 1.5s; }
@keyframes gxKeyP { 0%, 20%, 100% { opacity: .45; } 10% { opacity: 1; } }
.gx-ic .gx-tassel { transform-origin: 41px 20px; animation: gxSw 2.4s ease-in-out infinite; } @keyframes gxSw { 0%, 100% { transform: rotate(0); } 50% { transform: rotate(14deg); } }
.gx-ic .gx-swing { transform-origin: 32px 15px; animation: gxSw2 3s ease-in-out infinite; } @keyframes gxSw2 { 0%, 100% { transform: rotate(0); } 50% { transform: rotate(-8deg); } }
.gx-ic .gx-blink { animation: gxBlink 2.4s ease-in-out infinite; } @keyframes gxBlink { 50% { opacity: .35; } }
.gx-ic .gx-join { animation: gxJoin 3.2s ease-in-out infinite; } @keyframes gxJoin { 0%, 100% { transform: translateX(4px); opacity: 0; } 30%, 75% { transform: none; opacity: 1; } }
.gx-ic .gx-drop { animation: gxDrop 1.8s cubic-bezier(.5, 0, .3, 1) infinite; } @keyframes gxDrop { 0% { transform: translateY(-4px); opacity: 0; } 25% { opacity: 1; } 60% { transform: translateY(2px); } 100% { transform: translateY(2px); opacity: 0; } }
.gx-ic .gx-wins rect { fill: currentColor; stroke: none; opacity: .25; animation: gxWin 2.4s ease-in-out infinite; animation-delay: var(--d); } @keyframes gxWin { 0%, 100% { opacity: .2; } 50% { opacity: 1; } }
.gx-ic .gx-comet--slow { animation-duration: 3.8s; }
.gx-ic .gx-beat { fill: currentColor; }
.lk-dark .gx-ic .gx-lens, .lk-dark .gx-ic .gx-spark, .lk-dark .gx-ic .gx-lines, .lk-dark .gx-ic .gx-flap, .lk-dark .gx-ic .gx-wave, .lk-dark .gx-ic .gx-tassel, .lk-dark .gx-ic .gx-drop, .lk-dark .gx-ic .gx-join { stroke: #0b0d12; }

/* componentes: base comum */
.gx-xp small { font-size: 10.5px; color: var(--gm); }

/* conversa */
.gx-chat { display: grid; gap: 7px; }
.gx-bub { max-width: 82%; padding: 8px 11px; border-radius: 14px; font-size: 12px; line-height: 1.35; opacity: 0; transform: translateY(6px) scale(.97); }
.gx-bub--in { justify-self: start; background: var(--gs); border: 1px solid var(--gl); color: var(--gk); border-bottom-left-radius: 4px; }
.gx-bub--out { justify-self: end; background: var(--ga); color: #fff; border-bottom-right-radius: 4px; }
.lk-dark .gx-bub--out { color: #0b0d12; }
.gx-typing { justify-self: start; display: inline-flex; gap: 4px; padding: 9px 12px; border-radius: 14px; background: var(--gs); border: 1px solid var(--gl); opacity: 0; }
.gx-typing i { width: 5px; height: 5px; border-radius: 50%; background: var(--gm); animation: gxDot 1.2s ease-in-out infinite; } .gx-typing i:nth-child(2) { animation-delay: .15s; } .gx-typing i:nth-child(3) { animation-delay: .3s; }
.lk-card.is-open .gx-bub, .lk-card:focus-visible .gx-bub, .lk-card:hover .gx-bub, .lk-card.is-open .gx-typing, .lk-card:focus-visible .gx-typing, .lk-card:hover .gx-typing { animation: gxChip .45s cubic-bezier(.2, .8, .2, 1) forwards; animation-delay: calc(.2s + var(--i) * .7s); }

/* agenda */
.gx-cal { display: grid; gap: 9px; }
.gx-cal__d { display: grid; grid-template-columns: repeat(5, 1fr); gap: 5px; }
.gx-cal__d i { display: grid; justify-items: center; gap: 1px; padding: 5px 0; border-radius: 9px; font-style: normal; font-size: 12px; font-weight: 500; color: var(--gk); background: var(--gs); border: 1px solid var(--gl); transition: background .3s, color .3s; }
.gx-cal__d b { font-size: 9px; font-weight: 500; color: var(--gm); }
.lk-card.is-open .gx-cal__d i.is-on, .lk-card:focus-visible .gx-cal__d i.is-on, .lk-card:hover .gx-cal__d i.is-on { animation: gxPick .4s ease .5s forwards; } @keyframes gxPick { to { background: var(--ga); color: #fff; border-color: var(--ga); } }
.lk-card.is-open .gx-cal__d i.is-on b, .lk-card:focus-visible .gx-cal__d i.is-on b, .lk-card:hover .gx-cal__d i.is-on b { animation: gxPickB .4s ease .5s forwards; } @keyframes gxPickB { to { color: rgba(255, 255, 255, .8); } }
.gx-cal__s { display: flex; flex-wrap: wrap; gap: 5px; }
.gx-cal__s em { font-style: normal; font-size: 11px; padding: 4px 10px; border-radius: 99px; background: var(--gs); border: 1px solid var(--gl); color: var(--gk); opacity: 0; }
.lk-card.is-open .gx-cal__s em, .lk-card:focus-visible .gx-cal__s em, .lk-card:hover .gx-cal__s em { animation: gxChip .35s ease forwards; animation-delay: calc(.9s + var(--i) * .12s); }
.lk-card.is-open .gx-cal__s em.is-on, .lk-card:focus-visible .gx-cal__s em.is-on, .lk-card:hover .gx-cal__s em.is-on { animation: gxChip .35s ease 1.02s forwards, gxPick .4s ease 1.7s forwards; }
.gx-ok { justify-self: start; font-size: 10.5px; padding: 3px 9px 3px 20px; border-radius: 99px; background: var(--gg2); color: var(--gg); position: relative; opacity: 0; }
.gx-ok::before { content: ""; position: absolute; left: 8px; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: var(--gg); }
.lk-card.is-open .gx-ok, .lk-card:focus-visible .gx-ok, .lk-card:hover .gx-ok { animation: bpTxt .4s ease 2.2s forwards; }

/* assistente com IA */
.gx-ai { display: grid; gap: 9px; }
.gx-ai__q { justify-self: end; max-width: 86%; padding: 8px 11px; border-radius: 14px 14px 4px 14px; background: var(--gk); color: var(--gs); font-size: 12px; overflow: hidden; }
.lk-dark .gx-ai__q { color: #0b0d12; }
.gx-ai__q span { display: inline-block; white-space: nowrap; overflow: hidden; vertical-align: bottom; max-width: 0; }
.lk-card.is-open .gx-ai__q span, .lk-card:focus-visible .gx-ai__q span, .lk-card:hover .gx-ai__q span { animation: gxType 1.3s steps(26) .2s forwards; } @keyframes gxType { to { max-width: 100%; } }
.gx-ai__a { display: grid; grid-template-columns: 22px 1fr; gap: 9px; align-items: start; }
.gx-ai__s { width: 22px; height: 22px; fill: var(--ga); transform-origin: center; }
.lk-card.is-open .gx-ai__s, .lk-card:focus-visible .gx-ai__s, .lk-card:hover .gx-ai__s { animation: gxSpkC 1.2s ease-in-out 1.5s 2; } @keyframes gxSpkC { 50% { transform: rotate(90deg) scale(.8); } }
.gx-ai__l { display: grid; gap: 6px; padding-top: 3px; }
.gx-ai__l i { display: block; height: 6px; width: 0; border-radius: 4px; background: var(--gt); }
.lk-card.is-open .gx-ai__l i, .lk-card:focus-visible .gx-ai__l i, .lk-card:hover .gx-ai__l i { animation: gxW .6s cubic-bezier(.2, .8, .2, 1) forwards; animation-delay: calc(1.6s + var(--i) * .25s); } @keyframes gxW { to { width: var(--w); } }
.gx-ai__c { display: flex; gap: 5px; padding-left: 31px; }
.gx-ai__c em { font-style: normal; font-size: 10.5px; padding: 3px 9px; border-radius: 99px; background: var(--ga2); color: var(--ga); opacity: 0; }
.lk-card.is-open .gx-ai__c em, .lk-card:focus-visible .gx-ai__c em, .lk-card:hover .gx-ai__c em { animation: gxChip .35s ease forwards; animation-delay: calc(2.5s + var(--i) * .15s); }

/* dashboard */
.gx-dash { display: grid; gap: 10px; }
.gx-kp { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.gx-kp > span { display: grid; gap: 6px; padding: 8px; border-radius: 10px; background: var(--gs); border: 1px solid var(--gl); }
.gx-kp i { display: block; height: 4px; width: 0; border-radius: 3px; background: linear-gradient(90deg, var(--ga), var(--gg)); }
.lk-card.is-open .gx-kp i, .lk-card:focus-visible .gx-kp i, .lk-card:hover .gx-kp i { animation: gxW 1s cubic-bezier(.2, .8, .2, 1) forwards; animation-delay: calc(.3s + var(--i) * .2s); }
.gx-bars { display: flex; align-items: flex-end; gap: 5px; height: 56px; padding: 0 2px; border-bottom: 1px solid var(--gl); }
.gx-bars i { flex: 1; height: var(--h); border-radius: 4px 4px 0 0; background: var(--ga2); transform: scaleY(0); transform-origin: bottom; }
.gx-bars i:last-child { background: var(--ga); }
.lk-card.is-open .gx-bars i, .lk-card:focus-visible .gx-bars i, .lk-card:hover .gx-bars i { animation: gxGrow .6s cubic-bezier(.2, .8, .2, 1) forwards; animation-delay: calc(.6s + var(--i) * .08s); } @keyframes gxGrow { to { transform: none; } }

/* vídeo */
.gx-vid { display: grid; gap: 7px; }
.gx-vid__s { position: relative; display: grid; place-items: center; height: 96px; border-radius: 12px; overflow: hidden; background: radial-gradient(120% 140% at 15% 0%, #3d5cff 0, #1b2340 55%, #0b0d12 100%); }
.gx-vid__s::after { content: ""; position: absolute; inset: 0; background: linear-gradient(115deg, transparent 30%, rgba(255, 255, 255, .14) 45%, transparent 60%); transform: translateX(-100%); }
.lk-card.is-open .gx-vid__s::after, .lk-card:focus-visible .gx-vid__s::after, .lk-card:hover .gx-vid__s::after { animation: gxShine 2.4s ease .3s infinite; } @keyframes gxShine { to { transform: translateX(100%); } }
.gx-vid__p { position: relative; z-index: 1; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 0 rgba(255, 255, 255, .45); }
.gx-vid__p svg { width: 16px; height: 16px; fill: #0b0d12; margin-left: 2px; }
.lk-card.is-open .gx-vid__p, .lk-card:focus-visible .gx-vid__p, .lk-card:hover .gx-vid__p { animation: gxPulse 1.8s ease-out infinite; } @keyframes gxPulse { to { box-shadow: 0 0 0 16px rgba(255, 255, 255, 0); } }
.gx-vid__t { position: absolute; left: 10px; bottom: 8px; z-index: 1; font-size: 10.5px; color: rgba(255, 255, 255, .85); }
.gx-vid__bar { height: 4px; border-radius: 3px; background: var(--gt); overflow: hidden; } .gx-vid__bar i { display: block; height: 100%; width: 0; background: var(--ga); border-radius: inherit; }
.lk-card.is-open .gx-vid__bar i, .lk-card:focus-visible .gx-vid__bar i, .lk-card:hover .gx-vid__bar i { animation: gxW 6s linear .4s forwards; --w: 100%; }
.gx-vid__tm { display: flex; justify-content: space-between; }

/* mapa */
.gx-map { position: relative; display: block; height: 112px; border-radius: 12px; overflow: hidden; background: var(--gs); border: 1px solid var(--gl); }
.gx-map__r { position: absolute; inset: 0; width: 100%; height: 100%; } .gx-map__r path { fill: none; stroke: var(--gt); stroke-width: 9; vector-effect: non-scaling-stroke; } .gx-map__r .gx-map__m { stroke-width: 4; }
.gx-pin { position: absolute; width: 14px; height: 14px; margin: -14px 0 0 -7px; border-radius: 50% 50% 50% 0; background: var(--gk); transform: rotate(-45deg) translateY(-14px); opacity: 0; }
.gx-pin::after { content: ""; position: absolute; left: 4px; top: 4px; width: 6px; height: 6px; border-radius: 50%; background: var(--gs); }
.lk-dark .gx-pin::after { background: #07080c; }
.gx-pin.is-hi { background: var(--ga); width: 18px; height: 18px; margin: -18px 0 0 -9px; } .gx-pin.is-hi::after { left: 6px; top: 6px; }
.lk-card.is-open .gx-pin, .lk-card:focus-visible .gx-pin, .lk-card:hover .gx-pin { animation: gxPinD .5s cubic-bezier(.3, 1.5, .5, 1) forwards; animation-delay: calc(.3s + var(--i) * .18s); } @keyframes gxPinD { to { transform: rotate(-45deg); opacity: 1; } }
.gx-pin.is-hi::before { content: ""; position: absolute; left: 50%; top: 50%; width: 46px; height: 46px; margin: -23px; border-radius: 50%; background: var(--ga2); transform: scale(0); }
.lk-card.is-open .gx-pin.is-hi::before, .lk-card:focus-visible .gx-pin.is-hi::before, .lk-card:hover .gx-pin.is-hi::before { animation: gxRad 2s ease-out 1.4s infinite; } @keyframes gxRad { from { transform: scale(.2); opacity: 1; } to { transform: scale(1.6); opacity: 0; } }
.gx-map__c { position: absolute; left: 8px; bottom: 8px; font-size: 10.5px; padding: 3px 9px; border-radius: 99px; background: var(--gk); color: var(--gs); } .lk-dark .gx-map__c { color: #0b0d12; }

/* artigo */
.gx-art { display: grid; grid-template-columns: 92px 1fr; gap: 12px; align-items: center; }
.gx-art__img { display: block; height: 76px; border-radius: 10px; background: linear-gradient(135deg, var(--ga) 0, #7b8dff 60%, #c9d3ff 100%); position: relative; overflow: hidden; }
.gx-art__img i { position: absolute; inset: 0; background: linear-gradient(115deg, transparent 30%, rgba(255, 255, 255, .3) 45%, transparent 60%); transform: translateX(-100%); }
.lk-card.is-open .gx-art__img i, .lk-card:focus-visible .gx-art__img i, .lk-card:hover .gx-art__img i { animation: gxShine 2.6s ease .3s infinite; }
.gx-art__t { display: grid; gap: 6px; }
.gx-art__h, .gx-art__p { display: grid; gap: 5px; } .gx-art__h i, .gx-art__p i { display: block; width: var(--w); border-radius: 3px; } .gx-art__h i { height: 7px; background: var(--gk); opacity: .8; } .gx-art__p i { height: 4px; background: var(--gt); }
.gx-art__bar { grid-column: 1 / -1; height: 3px; border-radius: 3px; background: var(--gt); overflow: hidden; } .gx-art__bar i { display: block; height: 100%; width: 0; background: var(--ga); }
.lk-card.is-open .gx-art__bar i, .lk-card:focus-visible .gx-art__bar i, .lk-card:hover .gx-art__bar i { animation: gxW 3s ease .4s forwards; --w: 100%; }

/* simulador */
.gx-sim { display: grid; gap: 8px; }
.gx-sl { display: grid; gap: 5px; }
.gx-sl__tr { position: relative; display: block; height: 4px; border-radius: 3px; background: var(--gt); }
.gx-sl__tr i { position: absolute; left: 0; top: 0; bottom: 0; width: 15%; border-radius: inherit; background: var(--ga); }
.gx-sl__tr b { position: absolute; top: 50%; left: 15%; width: 14px; height: 14px; margin: -7px 0 0 -7px; border-radius: 50%; background: var(--gs); border: 2px solid var(--ga); box-shadow: 0 2px 6px rgba(11, 13, 18, .2); }
.lk-dark .gx-sl__tr b { background: #07080c; }
.lk-card.is-open .gx-sl i, .lk-card:focus-visible .gx-sl i, .lk-card:hover .gx-sl i { animation: gxSlI 1.2s cubic-bezier(.5, 0, .2, 1) forwards; animation-delay: calc(.3s + var(--i) * .35s); }
.lk-card.is-open .gx-sl b, .lk-card:focus-visible .gx-sl b, .lk-card:hover .gx-sl b { animation: gxSlB 1.2s cubic-bezier(.5, 0, .2, 1) forwards; animation-delay: calc(.3s + var(--i) * .35s); }
.gx-sl:nth-child(1) { --to: 68%; } .gx-sl:nth-child(2) { --to: 32%; } .gx-sl:nth-child(3) { --to: 82%; }
@keyframes gxSlI { to { width: var(--to); } } @keyframes gxSlB { to { left: var(--to); } }
.gx-sim__r { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 10px; padding: 9px 11px; border-radius: 11px; background: var(--gs); border: 1px solid var(--gl); }
.gx-sim__v { grid-column: 1; display: block; height: 10px; width: 0; border-radius: 4px; background: var(--gk); opacity: .85; }
.lk-card.is-open .gx-sim__v, .lk-card:focus-visible .gx-sim__v, .lk-card:hover .gx-sim__v { animation: gxW .6s ease 1.7s forwards; --w: 46%; }
.gx-sim__ok { grid-row: 1 / span 2; grid-column: 2; font-size: 10.5px; padding: 3px 9px; border-radius: 99px; background: var(--gg2); color: var(--gg); opacity: 0; }
.lk-card.is-open .gx-sim__ok, .lk-card:focus-visible .gx-sim__ok, .lk-card:hover .gx-sim__ok { animation: bpTxt .4s ease 2.2s forwards; }

/* telas em leque */
.gx-fan { position: relative; display: block; height: 118px; }
.gx-scr { position: absolute; left: 50%; top: 10px; width: 58%; height: 92px; margin-left: -29%; display: grid; grid-template-rows: auto 1fr; border-radius: 10px; background: var(--gs); border: 1px solid var(--gl); box-shadow: 0 10px 24px -14px rgba(11, 13, 18, .45); overflow: hidden; transition: transform .7s cubic-bezier(.2, .8, .2, 1); }
.lk-dark .gx-scr { background: #12151d; }
.gx-scr > b { display: flex; gap: 3px; padding: 6px 7px; border-bottom: 1px solid var(--gl); } .gx-scr > b i { width: 5px; height: 5px; border-radius: 50%; background: var(--gt); }
.gx-scr > span { display: grid; gap: 5px; align-content: start; padding: 8px; } .gx-scr > span i { display: block; height: 5px; width: var(--w); border-radius: 3px; background: var(--gt); }
.gx-scr em { position: absolute; left: 8px; right: 8px; bottom: 8px; height: 30px; border-radius: 7px; background: linear-gradient(135deg, var(--ga), #7b8dff); opacity: .9; }
.gx-scr--0 em { background: linear-gradient(135deg, #22c08a, #8fe3c2); } .gx-scr--2 em { background: linear-gradient(135deg, #0b0d12, #4a5163); }
.lk-dark .gx-scr--2 em { background: linear-gradient(135deg, #e8ebf5, #8a90a0); }
.gx-scr--1 { z-index: 2; }
.lk-card.is-open .gx-scr--0, .lk-card:focus-visible .gx-scr--0, .lk-card:hover .gx-scr--0 { transform: translateX(-46%) rotate(-7deg) scale(.9); } .lk-card.is-open .gx-scr--2, .lk-card:focus-visible .gx-scr--2, .lk-card:hover .gx-scr--2 { transform: translateX(46%) rotate(7deg) scale(.9); } .lk-card.is-open .gx-scr--1, .lk-card:focus-visible .gx-scr--1, .lk-card:hover .gx-scr--1 { transform: translateY(-4px); }

/* formulário */
.gx-form { display: grid; gap: 7px; }
.gx-f { display: grid; gap: 4px; padding: 7px 10px; border-radius: 10px; background: var(--gs); border: 1px solid var(--gl); }
.gx-f i { display: block; height: 6px; width: 0; border-radius: 3px; background: var(--gk); opacity: .7; position: relative; }
.lk-card.is-open .gx-f i, .lk-card:focus-visible .gx-f i, .lk-card:hover .gx-f i { animation: gxW .7s steps(12) forwards; animation-delay: calc(.3s + var(--i) * .55s); }
.lk-card.is-open .gx-f, .lk-card:focus-visible .gx-f, .lk-card:hover .gx-f { animation: gxFoc .9s ease; animation-delay: calc(.2s + var(--i) * .55s); } @keyframes gxFoc { 0%, 100% { border-color: var(--gl); } 20%, 80% { border-color: var(--ga); } }
.gx-send { justify-self: end; display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px; border-radius: 10px; background: var(--gk); color: var(--gs); font-size: 11.5px; }
.lk-dark .gx-send { color: #0b0d12; }
.gx-send svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; display: none; }
.lk-card.is-open .gx-send, .lk-card:focus-visible .gx-send, .lk-card:hover .gx-send { animation: gxSent .4s ease 2.2s forwards; } @keyframes gxSent { to { background: var(--gg); color: #fff; } }
.lk-card.is-open .gx-send svg, .lk-card:focus-visible .gx-send svg, .lk-card:hover .gx-send svg { display: block; stroke-dasharray: 20; stroke-dashoffset: 20; animation: gxLine .4s ease 2.4s forwards; }

/* redes sociais */
.gx-soc { display: grid; gap: 8px; }
.gx-soc__h { display: flex; align-items: center; gap: 8px; }
.gx-soc__h > i { width: 26px; height: 26px; border-radius: 50%; background: conic-gradient(from 200deg, #3d5cff, #8ea2ff, #22c08a, #3d5cff); padding: 2px; }
.gx-soc__h > span { flex: 1; display: grid; gap: 4px; } .gx-soc__h b { height: 6px; width: 54%; border-radius: 3px; background: var(--gk); opacity: .75; } .gx-soc__h small { height: 4px; width: 34%; border-radius: 3px; background: var(--gt); }
.gx-soc__h em { font-style: normal; font-size: 11px; padding: 4px 11px; border-radius: 8px; background: var(--ga); color: #fff; }
.lk-card.is-open .gx-soc__h em, .lk-card:focus-visible .gx-soc__h em, .lk-card:hover .gx-soc__h em { animation: gxFol .4s ease 1.6s forwards; } @keyframes gxFol { to { background: var(--gs); color: var(--gk); box-shadow: inset 0 0 0 1px var(--gl); } }
.gx-soc__g { display: grid; grid-template-columns: repeat(6, 1fr); gap: 4px; }
.gx-soc__g i { position: relative; aspect-ratio: 1; border-radius: 6px; background: var(--gt); overflow: hidden; opacity: 0; transform: scale(.9); }
.gx-soc__g i:nth-child(1) { background: linear-gradient(135deg, #3d5cff, #9aaaff); } .gx-soc__g i:nth-child(3) { background: linear-gradient(135deg, #22c08a, #a7ecd0); } .gx-soc__g i:nth-child(5) { background: linear-gradient(135deg, #0b0d12, #59607a); }
.gx-soc__g s { position: absolute; inset: 0; display: grid; place-items: center; text-decoration: none; }
.gx-soc__g s::after { content: "♥"; font-size: 16px; color: #ef4466; transform: scale(0); }
.lk-card.is-open .gx-soc__g i, .lk-card:focus-visible .gx-soc__g i, .lk-card:hover .gx-soc__g i { animation: gxChip .4s ease forwards; animation-delay: calc(.2s + var(--i) * .1s); }
.lk-card.is-open .gx-soc__g s::after, .lk-card:focus-visible .gx-soc__g s::after, .lk-card:hover .gx-soc__g s::after { animation: gxHeartP .6s cubic-bezier(.3, 1.6, .5, 1) 1.2s forwards; } @keyframes gxHeartP { 60% { transform: scale(1.3); } to { transform: scale(1); } }

/* material para download */
.gx-dl { display: grid; grid-template-columns: 70px 1fr; gap: 12px; align-items: center; }
.gx-dl__f { position: relative; display: grid; gap: 6px; align-content: end; height: 86px; padding: 10px 9px; border-radius: 8px 16px 8px 8px; background: var(--gs); border: 1px solid var(--gl); }
.gx-dl__f b { position: absolute; top: 9px; left: 9px; font-size: 9.5px; font-weight: 600; letter-spacing: .06em; padding: 2px 6px; border-radius: 4px; background: #ef4466; color: #fff; }
.gx-dl__f span { display: grid; gap: 4px; } .gx-dl__f span i { display: block; height: 3px; width: var(--w); border-radius: 3px; background: var(--gt); }
.lk-card.is-open .gx-dl__f, .lk-card:focus-visible .gx-dl__f, .lk-card:hover .gx-dl__f { animation: gxBob .9s ease-in-out 2; }
.gx-dl__r { display: grid; gap: 7px; }
.gx-dl__bar { height: 6px; border-radius: 4px; background: var(--gt); overflow: hidden; } .gx-dl__bar i { display: block; height: 100%; width: 0; border-radius: inherit; background: linear-gradient(90deg, var(--ga), var(--gg)); }
.lk-card.is-open .gx-dl__bar i, .lk-card:focus-visible .gx-dl__bar i, .lk-card:hover .gx-dl__bar i { animation: gxW 1.8s cubic-bezier(.4, 0, .2, 1) .3s forwards; --w: 100%; }
.gx-dl__ok { justify-self: start; font-size: 10.5px; padding: 3px 9px; border-radius: 99px; background: var(--gg2); color: var(--gg); opacity: 0; }
.lk-card.is-open .gx-dl__ok, .lk-card:focus-visible .gx-dl__ok, .lk-card:hover .gx-dl__ok { animation: bpTxt .4s ease 2.2s forwards; }
@keyframes gxBob { 50% { transform: translateY(-3px); } }

/* lançamento */
.gx-lan { display: grid; grid-template-columns: 92px 1fr; gap: 12px; align-items: end; }
.gx-lan__b { display: flex; flex-direction: column-reverse; gap: 3px; height: 104px; padding: 0 16px; border-bottom: 2px solid var(--gl); }
.gx-lan__b i { display: block; height: 11px; border-radius: 3px; background: var(--ga2); border: 1px solid var(--ga); opacity: 0; transform: translateY(-14px); }
.gx-lan__b i:last-child { background: var(--ga); }
.lk-card.is-open .gx-lan__b i, .lk-card:focus-visible .gx-lan__b i, .lk-card:hover .gx-lan__b i { animation: gxFloor .35s cubic-bezier(.3, 1.4, .5, 1) forwards; animation-delay: calc(.2s + var(--i) * .16s); } @keyframes gxFloor { to { opacity: 1; transform: none; } }
.gx-lan__t small { display: block; font-size: 11px; color: var(--gm); } .gx-lan__t b { display: block; font-size: 14px; font-weight: 500; color: var(--gk); margin-top: 2px; }

@media (max-width: 380px) { .gx-art, .gx-lan { grid-template-columns: 76px 1fr; } .gx-dl { grid-template-columns: 60px 1fr; } }
@media (prefers-reduced-motion: reduce) {
  .gx-bub, .gx-typing, .gx-cal__s em, .gx-ok, .gx-ai__c em, .gx-pin, .gx-sim__ok, .gx-soc__g i, .gx-dl__ok, .gx-lan__b i { opacity: 1 !important; transform: none !important; }
  .gx-pin { transform: rotate(-45deg) !important; }
  .gx-ai__q span { max-width: 100%; } .gx-ai__l i, .gx-kp i, .gx-f i { width: var(--w); } .gx-bars i { transform: none; } .gx-soc__g s::after { transform: none; }
}

/* vitrine de componentes do /link */
.lk-gal .lk-head { padding-top: 32px; }
.lk-galh { font-size: 26px; font-weight: 600; letter-spacing: -.02em; color: var(--gk); text-align: center; margin: 0; }
.lk-galh--2 { margin: 44px 0 16px; font-size: 20px; }
.lk-galb { display: flex; gap: 8px; justify-content: center; margin-top: 14px; }
.lk-galb .gx-cta { border: 0; cursor: pointer; font: inherit; font-size: 12.5px; padding: 8px 16px; }
.lk-galb .gx-cta--o { background: transparent; color: var(--gk); box-shadow: inset 0 0 0 1px var(--gl); }
.lk-gal .lk-card { cursor: default; }
.lk-icg { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 16px 10px; }
.lk-icg li { display: grid; justify-items: center; gap: 8px; text-align: center; }
.lk-icg small { font-size: 11px; line-height: 1.3; color: var(--gm); }

/* ================= TEMA ESCURO ================= */
/* botão discreto no cabeçalho */
.lc-theme { position: relative; display: inline-grid; place-items: center; width: 34px; height: 34px; flex-shrink: 0; border-radius: 999px; border: 0; background: transparent; color: var(--lc-ink); opacity: .45; cursor: pointer; transition: opacity .25s, background .25s, transform .4s var(--lc-ease); }
.lc-theme:hover, .lc-theme:focus-visible { opacity: 1; background: rgba(127, 140, 170, .12); }
.lc-theme:active { transform: rotate(-20deg) scale(.92); }
.lc-theme svg { grid-area: 1 / 1; width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; transition: opacity .35s, transform .5s var(--lc-ease); }
.lc-theme__sun { opacity: 0; transform: rotate(-60deg) scale(.6); }
[data-theme="dark"] .lc-theme__moon { opacity: 0; transform: rotate(60deg) scale(.6); }
[data-theme="dark"] .lc-theme__sun { opacity: 1; transform: none; }
@media (max-width: 1279px) { .lc-theme { width: 40px; height: 40px; } }
.lc-theming, .lc-theming *, .lc-theming *::before, .lc-theming *::after { transition: background-color .4s ease, border-color .4s ease, color .4s ease, fill .4s ease, box-shadow .4s ease !important; }

html[data-theme="dark"] {
  color-scheme: dark;
  --lc-ink: #f2f4f9;
  --lc-text: #dfe3ec;
  --lc-muted: rgba(223, 227, 236, .74);
  --lc-faint: rgba(223, 227, 236, .62);
  --lc-primary: #8b9dff;
  --lc-primary-600: #a3b1ff;
  --lc-primary-50: rgba(91, 116, 255, .16);
  --lc-surface: #12151d;
  --lc-bg: #090b10;
  --lc-soft: #151922;
  --lc-line: #222735;
  --lc-line-2: #2c3344;
  --lc-warn: #f5b942;
  --lc-warn-50: rgba(245, 185, 66, .12);
  --lc-ok: #4fd1a5;
  --lc-ok-50: rgba(79, 209, 165, .12);
  --lc-shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 14px 34px -20px rgba(0, 0, 0, .7);
  --lc-shadow-lg: 0 2px 4px rgba(0, 0, 0, .3), 0 30px 70px -30px rgba(0, 0, 0, .85);
  /* variáveis do tema base */
  --color-background-1: #0e1117; --color-background-2: #10131a; --color-background-3: #141821; --color-background-4: #181c26;
  --color-background-12: #1a1e28; --color-background-13: #090b10;
  --color-secondary: #dfe3ec;
  --color-stroke-1: #262c3a; --color-stroke-2: #222735; --color-stroke-3: #2c3344; --color-stroke-4: #1e2330;
  background: #090b10;
}
html[data-theme="dark"] body { background: #090b10; color: var(--lc-text); }
[data-theme="dark"] .bg-white { background-color: var(--lc-surface) !important; }
[data-theme="dark"] .text-secondary { color: var(--lc-text); }
[data-theme="dark"] ::selection { background: rgba(91, 116, 255, .45); color: #fff; }

/* mockups de produto continuam em modo claro (parecem capturas reais) */
[data-theme="dark"] .lv-win, [data-theme="dark"] .ms, [data-theme="dark"] .lv-phone, [data-theme="dark"] .dv-screen, [data-theme="dark"] .lv-float, [data-theme="dark"] .lv-media,
[data-theme="dark"] .lk, [data-theme="dark"] .lc-ins__img .lc-tag {
  --lc-ink: #0b0d12; --lc-text: #1a1a1c; --lc-muted: rgba(26, 26, 28, .72); --lc-faint: rgba(26, 26, 28, .64);
  --lc-primary: #3d5cff; --lc-primary-600: #2c48e6; --lc-primary-50: #eef1ff; --lc-surface: #fff; --lc-bg: #f2f5fa; --lc-soft: #f7f9fc; --lc-line: #e3e7ed; --lc-line-2: #d7dde5;
  --lc-warn: #b45309; --lc-ok: #0f7a5b;
}
[data-theme="dark"] .lv-win { box-shadow: 0 30px 80px -40px rgba(0, 0, 0, .9), 0 0 0 1px rgba(255, 255, 255, .06); }
[data-theme="dark"] .dv-lid { border-color: #333a4a; box-shadow: 0 50px 100px -50px rgba(0, 0, 0, .95), 0 0 0 1px rgba(255, 255, 255, .06); }
[data-theme="dark"] .dv-phone__body { border-color: #3a4152; }
[data-theme="dark"] .dv-base { background: linear-gradient(#c7cdd8, #8f97a5 70%, #6f7785); }

/* cabeçalho e menus em vidro escuro */
[data-theme="dark"] .header-scroll { box-shadow: 0 10px 34px -18px rgba(0, 0, 0, .8); }
[data-theme="dark"] .header-scroll::before { background: rgba(14, 17, 24, .62); }
[data-theme="dark"] .header-scroll .mega-menu, [data-theme="dark"] .sidebar { background: rgba(14, 17, 24, .72) !important; box-shadow: 0 24px 50px -20px rgba(0, 0, 0, .8); }
[data-theme="dark"] .header-scroll .lc-mega { background: rgba(16, 19, 27, .86) !important; border-color: rgba(255, 255, 255, .06) !important; }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) { [data-theme="dark"] .header-scroll::before, [data-theme="dark"] .header-scroll .mega-menu, [data-theme="dark"] .sidebar { background: rgba(14, 17, 24, .97) !important; } }
[data-theme="dark"] .brand-signature, [data-theme="dark"] .lc-footer img[data-sig-anim], [data-theme="dark"] .lc-fsig img { filter: invert(1) hue-rotate(180deg) brightness(1.1); }
[data-theme="dark"] .lc-burger { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .1); }
[data-theme="dark"] .lc-burger span { background: var(--lc-ink); }
[data-theme="dark"] .lc-nav-a, [data-theme="dark"] .nav-item > a { color: var(--lc-text); }
[data-theme="dark"] .nav-arrow svg { stroke: currentColor; }
[data-theme="dark"] .lc-mega__tab[aria-selected="true"], [data-theme="dark"] .lc-mtabs > i { background: #1d2230; box-shadow: 0 6px 18px -10px rgba(0, 0, 0, .8); }
[data-theme="dark"] .lc-mega__body, [data-theme="dark"] .lc-mega__grid, [data-theme="dark"] .lc-mega__segs { background: rgba(255, 255, 255, .03); }
[data-theme="dark"] .lc-segcard:hover, [data-theme="dark"] .lc-segcard:focus-visible, [data-theme="dark"] .lc-solitem:hover { background: #1a1f2b; }
[data-theme="dark"] .lc-nav__close, [data-theme="dark"] .lc-nav__links a, [data-theme="dark"] .lc-nav__quick a, [data-theme="dark"] .lc-mcard, [data-theme="dark"] .lc-mseg { background: rgba(255, 255, 255, .04); border-color: rgba(255, 255, 255, .08); }
[data-theme="dark"] .lc-nav__foot { background: rgba(255, 255, 255, .03); }
[data-theme="dark"] .lc-nav__sheet { background: rgba(14, 17, 24, .9); box-shadow: 0 0 0 1px rgba(255, 255, 255, .06); }
[data-theme="dark"] .lc-nav__backdrop { background: rgba(0, 0, 0, .55); }
[data-theme="dark"] .lc-nav__cta { background: #4561ff; }
[data-theme="dark"] .lc-nav-a { color: rgba(223, 227, 236, .72); }
[data-theme="dark"] .lc-nav-a:hover, [data-theme="dark"] .nav-item.active > .lc-nav-a, [data-theme="dark"] .lc-nav-a.is-active { color: #fff; border-color: rgba(255, 255, 255, .12); }
[data-theme="dark"] .lc-nav .lc-search input, [data-theme="dark"] .lc-search input { background: rgba(255, 255, 255, .05); border-color: var(--lc-line-2); color: var(--lc-ink); }
[data-theme="dark"] .lc-search input:focus, [data-theme="dark"] .lc-input:focus { background: rgba(255, 255, 255, .07); box-shadow: 0 0 0 4px rgba(91, 116, 255, .22); }
[data-theme="dark"] .lc-results a { background: rgba(255, 255, 255, .04); }
[data-theme="dark"] input::placeholder, [data-theme="dark"] textarea::placeholder { color: rgba(223, 227, 236, .5); }

/* botões do tema */
[data-theme="dark"] .bg-accent\/60 { background: rgba(255, 255, 255, .05) !important; }
[data-theme="dark"] [data-button-wrapper] { border-color: rgba(255, 255, 255, .1); }
[data-theme="dark"] .bg-linear-to-b.from-white { --tw-gradient-from: #2a3040; --tw-gradient-to: #1a1e29; background-image: linear-gradient(#2a3040, #1a1e29); }
[data-theme="dark"] .bg-linear-to-b.from-white svg { stroke: #fff; }
[data-theme="dark"] .bg-primary-500 .bg-linear-to-b.from-white { background-image: linear-gradient(#fff, #e6e9f2); }
[data-theme="dark"] .bg-primary-500 .bg-linear-to-b.from-white svg { stroke: #000; }

/* superfícies e componentes */
[data-theme="dark"] .lc-card--glass { background: rgba(18, 21, 29, .6); }
[data-theme="dark"] .lc-eyebrow, [data-theme="dark"] .lc-cfacts li, [data-theme="dark"] .lc-jnav__in, [data-theme="dark"] .lc-subnav__in, [data-theme="dark"] .lc-intents { background: rgba(18, 21, 29, .78); border-color: var(--lc-line); }
[data-theme="dark"] .lc-rail a:hover, [data-theme="dark"] .lc-rail a.is-current, [data-theme="dark"] .lc-cbtn, [data-theme="dark"] .lc-intent, [data-theme="dark"] .lc-shot, [data-theme="dark"] .lc-shot figcaption { background: var(--lc-surface); }
[data-theme="dark"] .lc-status--dev { background: rgba(91, 116, 255, .16); }
[data-theme="dark"] .lc-status--demo { background: rgba(140, 100, 255, .16); color: #c4b0ff; }
[data-theme="dark"] .lc-status--concept { background: rgba(255, 255, 255, .06); color: #b8bfcc; }
[data-theme="dark"] .lc-input[aria-invalid="true"] { background: rgba(240, 68, 56, .08); }
[data-theme="dark"] [data-form-msg].err { background: rgba(240, 68, 56, .12); color: #ff9c92; }
[data-theme="dark"] .lc-hero__grid, [data-theme="dark"] .lc-home-hero > .lc-hero__grid { background-image: linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px); }
[data-theme="dark"] .lc-city__b path { stroke: rgba(139, 157, 255, .34); }
[data-theme="dark"] .lc-city__w rect, [data-theme="dark"] .lc-city__p circle { fill: #8b9dff; }
[data-theme="dark"] .lc-home-hero--dv .lc-home-hero__visual::before { background: radial-gradient(50% 55% at 50% 45%, rgba(61, 92, 255, .32), transparent 70%); }
[data-theme="dark"] .dv-lbl.is-on { background: var(--lc-surface); box-shadow: 0 8px 22px -12px rgba(0, 0, 0, .8); }
[data-theme="dark"] .lc-footer, [data-theme="dark"] .lc-footer--v3 { background: #0c0e14; }
[data-theme="dark"] .lc-fcta { background: #141826; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06); }
[data-theme="dark"] .lc-darkbox { background-color: #10131b; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06); }
[data-theme="dark"] .lc-solcard__big { background-image: linear-gradient(120deg, #fff, #8ea2ff); }
[data-theme="dark"] .lc-artfeat, [data-theme="dark"] .lc-card--soft { background: var(--lc-surface); }
[data-theme="dark"] .lc-tag { background: rgba(255, 255, 255, .06); color: var(--lc-text); }
[data-theme="dark"] .lc-ins__img .lc-tag { background: rgba(255, 255, 255, .92); color: #0b0d12; }
[data-theme="dark"] .lc-minivis { filter: brightness(.92); }
[data-theme="dark"] hr, [data-theme="dark"] .border-stroke-1 { border-color: var(--lc-line); }
[data-theme="dark"] img[src$=".svg"].lc-invert-dark { filter: invert(1); }

/* superfícies que usavam a cor do texto como fundo */
[data-theme="dark"] .lc-skip, [data-theme="dark"] .lc-card--accent, [data-theme="dark"] .lc-filter[aria-pressed="true"], [data-theme="dark"] .lc-jnav__i:hover, [data-theme="dark"] .lc-jnav__i.is-current, [data-theme="dark"] .lc-subnav__home, [data-theme="dark"] .lc-letter { background-color: #262c3d; border-color: #343b50; color: #fff; }
[data-theme="dark"] .lc-filter[aria-pressed="true"] { background-color: #f2f4f9; border-color: #f2f4f9; color: #0b0d12; }
[data-theme="dark"] .lc-solcard--all, [data-theme="dark"] .lc-solcard__vis, [data-theme="dark"] .lc-artfeat__vis:not(.lc-artfeat__vis--img) { background-color: #151a26; background-image: radial-gradient(120% 100% at 100% 0%, rgba(61, 92, 255, .5), transparent 60%); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06); }
[data-theme="dark"] .lc-eco__core { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08); }
[data-theme="dark"] .lc-step__n { background-color: #262c3d; color: #fff; }
[data-theme="dark"] .lc-cbtn--wa { background: #1c2130; border-color: #2c3344; }
/* ícones e realces com primário: manter azul forte quando há texto branco por cima */
[data-theme="dark"] .lc-card--link:hover .lc-ico, [data-theme="dark"] .lc-solitem:hover .lc-ico, [data-theme="dark"] .lc-mega__tab[aria-selected="true"] .lc-ico, [data-theme="dark"] .lc-segcard:hover .lc-ico, [data-theme="dark"] .lc-intent[aria-pressed="true"] .lc-ico, [data-theme="dark"] .lc-tabpills button[data-mobile-active="true"] { background: #4561ff; border-color: #4561ff; color: #fff; }
[data-theme="dark"] .lc-ico { background: rgba(139, 157, 255, .1); border-color: rgba(139, 157, 255, .2); color: #a9b6ff; }
/* ecossistema */
[data-theme="dark"] .lv-eco__n { background: #161b26; border-color: #2a3142; box-shadow: 0 10px 24px -12px rgba(0, 0, 0, .8); }
[data-theme="dark"] .lv-eco__ring { stroke: rgba(139, 157, 255, .22); }
[data-theme="dark"] .lv-eco__core { box-shadow: 0 0 0 1px rgba(255, 255, 255, .08), 0 30px 60px -20px rgba(61, 92, 255, .5); }
[data-theme="dark"] .lc-fcontact, [data-theme="dark"] .lc-stat, [data-theme="dark"] .lc-tabpills button:not([data-mobile-active="true"]), [data-theme="dark"] .lc-chan:not(.lc-chan--wa) { background: var(--lc-surface); }
[data-theme="dark"] .lc-mega__sectr { background: rgba(255, 255, 255, .03); }
[data-theme="dark"] .lc-tl__dot { background: var(--lc-surface); }
[data-theme="dark"] .lc-subnav__scroll a[aria-current="page"], [data-theme="dark"] .lc-subnav__scroll a:hover, [data-theme="dark"] .lc-toc__sib a[aria-current="page"], [data-theme="dark"] .lc-jr__n { color: #b3bfff !important; }
[data-theme="dark"] .text-secondary\/60 { color: rgba(223, 227, 236, .72) !important; }
[data-theme="dark"] .border-stroke-3.size-7, [data-theme="dark"] .accordion-item .bg-white, [data-theme="dark"] [class*="accordion"] span.border-stroke-3 { background: #1c2130 !important; border-color: #2c3344 !important; }
[data-theme="dark"] [class*="accordion"] svg, [data-theme="dark"] .border-stroke-3.size-7 svg { stroke: #dfe3ec; }
[data-theme="dark"] .lc-toc a, [data-theme="dark"] .lc-toc__sib a { color: var(--lc-muted); }
[data-theme="dark"] .lc-toc a:hover, [data-theme="dark"] .lc-toc a.is-active { color: var(--lc-ink); }
:where(html[data-theme="dark"]) p { color: rgba(223, 227, 236, .74); }
[data-theme="dark"] .lc-btn-solid { background: #4561ff; }
[data-theme="dark"] .lc-btn-solid:hover { background: #5670ff; }
:where(html[data-theme="dark"] :is(.lv-win, .ms, .lv-phone, .lk, .lv-float, .dv-screen)) p { color: rgba(13, 13, 18, .6); }
[data-theme="dark"] img[src*="assinatura"]:not(.lk img), [data-theme="dark"] img[data-sig-anim] { filter: invert(1) hue-rotate(180deg) brightness(1.1); }

/* utilitários gerados */

.mt-12{margin-top:calc(var(--spacing,.25rem)*12)}.mt-16{margin-top:calc(var(--spacing,.25rem)*16)}.max-w-\[560px\]{max-width:560px}.gap-1\.5{gap:calc(var(--spacing,.25rem)*1.5)}@media not all and (min-width:48rem){.max-md\:hidden{display:none}}@media (min-width:48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:64rem){.lg\:col-span-8{grid-column:span 8/span 8}.lg\:col-span-10{grid-column:span 10/span 10}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:gap-5{gap:calc(var(--spacing,.25rem)*5)}.lg\:gap-x-12{column-gap:calc(var(--spacing,.25rem)*12)}.lg\:pl-6{padding-left:calc(var(--spacing,.25rem)*6)}}@media (min-width:80rem){.xl\:gap-2{gap:calc(var(--spacing,.25rem)*2)}}
/* ---------- /link v39: card só expande; navegação apenas pelo botão "Acessar" ---------- */
.gx .lk-card { cursor: pointer; user-select: none; -webkit-user-select: none; }
.gx .lk-card:active { transform: none; }
.gx .lk-card .gx-go { transition: background .3s, color .3s, transform .45s cubic-bezier(.2, .8, .2, 1); }
.gx .lk-card:hover .gx-go { transform: none; }
.gx .lk-card.is-open .gx-go, .gx .lk-card:focus-within .gx-go { transform: rotate(180deg); }
.lk-card:focus-within .lk-xp { grid-template-rows: 1fr; opacity: 1; margin-top: 14px; }
.lk-card:focus-within { border-color: rgba(61, 92, 255, .45); z-index: 2; }
.gx-xpbar { padding-bottom: 6px; } .gx-xpbar > span { min-width: 0; }
a.gx-cta { position: relative; flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 9px 16px 9px 18px; font-size: 13.5px; font-weight: 500; line-height: 1; text-decoration: none; cursor: pointer; user-select: none; -webkit-tap-highlight-color: transparent; box-shadow: 0 6px 14px -9px rgba(11, 13, 18, .5); transition: transform .25s cubic-bezier(.2, .8, .2, 1), background .25s, box-shadow .25s; }
a.gx-cta::before { content: ""; position: absolute; inset: -6px; } /* área de toque maior */
a.gx-cta .gx-arr { width: 15px; height: 15px; transition: transform .25s cubic-bezier(.2, .8, .2, 1); }
a.gx-cta:hover { background: #3d5cff; box-shadow: 0 6px 14px -8px rgba(61, 92, 255, .7); }
a.gx-cta:hover .gx-arr { transform: translateX(2px); }
a.gx-cta:active { transform: scale(.96); }
a.gx-cta:focus-visible { outline: 2px solid #3d5cff; outline-offset: 3px; }
.lk-dark a.gx-cta:hover { background: #8ea2ff; color: #0b0d12; }
@media (prefers-reduced-motion: reduce) { .gx .lk-card .gx-go, a.gx-cta, a.gx-cta .gx-arr { transition: none; } }
