
/* ===================================================================
   AVANTAR V2 · Landing Premium · Dark Editorial
   =================================================================== */

:root{
  /* dark palette */
  --bg-deep:#050E1A;
  --bg-mid:#0A1929;
  --bg-light:#0F2538;
  --bg-glow:#0E5F6B;

  /* purple */
  --purple-100:#E0FAFA;
  --purple-300:#3DDADA;
  --purple-500:#14C5C5;
  --purple-600:#0E9B9B;
  --purple-700:#0A6B6B;

  /* magenta CTA */
  --magenta-300:#7AF0F0;
  --magenta-500:#3DDADA;
  --magenta-600:#14C5C5;
  --magenta-700:#0E9B9B;

  /* neutral */
  --white:#ffffff;
  --text:#ffffff;
  --text-soft:rgba(255,255,255,.72);
  --text-muted:rgba(255,255,255,.5);
  --line:rgba(255,255,255,.12);
  --line-strong:rgba(255,255,255,.22);

  /* layout */
  --maxw:1320px;
  --pad-h:48px;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{overflow-x:clip;max-width:100vw}
body{
  font-family:'Familjen Grotesk',system-ui,-apple-system,Segoe UI,sans-serif;
  background:var(--bg-deep);color:var(--text);line-height:1.55;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer}
svg{display:block}

/* ---------- container ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}

/* ===================================================================
   HERO
   =================================================================== */
.hero{
  position:relative;min-height:100vh;overflow:hidden;
  background:var(--bg-deep) radial-gradient(125% 95% at 80% 8%,rgba(20,197,197,.30) 0%,rgba(14,95,107,.12) 40%,transparent 72%) no-repeat;
}
.hero::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(5,14,26,.15) 0%,transparent 30%,transparent 70%,rgba(5,14,26,.5) 100%);
}

/* ---------- header ---------- */
.header{
  position:relative;z-index:10;padding:24px 0;
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;gap:32px;
}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--white)}
.brand svg{width:32px;height:auto;fill:var(--white)}

.nav{display:flex;gap:36px}
.nav a{
  font-size:.92rem;font-weight:500;color:var(--text-soft);
  transition:color .2s ease;position:relative;padding:6px 0;
}
.nav a:hover{color:var(--white)}
.nav a:focus-visible{outline:2px solid var(--magenta-500);outline-offset:4px;border-radius:4px}

.menu-toggle{
  display:none;background:none;border:none;
  width:44px;height:44px;color:var(--white);
  align-items:center;justify-content:center;transition:opacity .2s;
}
.menu-toggle:hover{opacity:.7}
.menu-toggle svg{width:22px;height:22px}

/* divider gradient elegante sob header */
.header-rule{
  position:relative;z-index:5;
  height:2px;
  background:linear-gradient(90deg,
    rgba(14,155,155,.45) 0%,
    rgba(20,197,197,.6) 25%,
    rgba(61,218,218,.75) 50%,
    rgba(20,197,197,.6) 75%,
    rgba(14,155,155,.45) 100%
  );
  margin-bottom:16px;
  border-radius:2px;
}
/* glow removido da linha do header */

/* ===================================================================
   STICKY HEADER · aparece depois de sair da hero
   =================================================================== */
.sticky-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  padding:14px 0;
  background:rgba(5,14,26,.78);
  backdrop-filter:blur(18px) saturate(160%);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  border-bottom:1px solid rgba(255,255,255,.06);
  transform:translateY(-100%);
  transition:transform .4s cubic-bezier(.4,0,.2,1),background .4s ease;
  visibility:hidden;
}
.sticky-header.is-visible{
  transform:translateY(0);
  visibility:visible;
}
.sticky-header-inner{
  display:flex;align-items:center;justify-content:space-between;gap:32px;
  max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);
}
.sticky-header .brand{color:#fff;flex-shrink:0}
.sticky-header .brand svg{width:26px;fill:#fff}

.sticky-header .nav{display:flex;gap:32px;flex:1;justify-content:center}
.sticky-header .nav a{
  font-size:.9rem;font-weight:500;color:rgba(255,255,255,.72);
  transition:color .2s ease;padding:6px 0;position:relative;
}
.sticky-header .nav a:hover{color:#fff}
.sticky-header .nav a::after{
  content:"";position:absolute;bottom:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-300));
  transform:scaleX(0);transform-origin:left;
  transition:transform .25s ease;
}
.sticky-header .nav a:hover::after{transform:scaleX(1)}
.sticky-cta{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  height:48px;padding:0 30px;border-radius:100px;line-height:1;
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  color:#fff;font-size:.92rem;font-weight:600;letter-spacing:-.005em;white-space:nowrap;
  box-shadow:0 8px 22px -8px rgba(20,197,197,.6),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .25s ease,box-shadow .25s ease;
  flex-shrink:0;text-decoration:none;
}
.sticky-cta:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 28px -8px rgba(20,197,197,.8),inset 0 1px 0 rgba(255,255,255,.35);
}
.sticky-cta svg{width:14px;height:14px;transition:transform .25s ease}
.sticky-cta:hover svg{transform:translateX(2px)}
.sticky-menu-toggle{
  display:none;background:none;border:none;
  width:42px;height:42px;color:#fff;
  align-items:center;justify-content:center;
  flex-shrink:0;
  position:relative;
  transition:opacity .25s ease;
}
.sticky-menu-toggle:hover{
  opacity:.7;
}
.sticky-menu-toggle .icon-bars,
.sticky-menu-toggle .icon-close{
  position:absolute;inset:0;display:grid;place-items:center;
  transition:opacity .25s ease,transform .25s ease;
}
.sticky-menu-toggle .icon-close{opacity:0;transform:rotate(-90deg)}
.sticky-menu-toggle[aria-expanded="true"] .icon-bars{opacity:0;transform:rotate(90deg)}
.sticky-menu-toggle[aria-expanded="true"] .icon-close{opacity:1;transform:rotate(0)}
.sticky-menu-toggle svg{width:20px;height:20px}

/* ===================================================================
   MOBILE MENU · drawer fullscreen com glass + glow
   =================================================================== */
.mobile-menu{
  position:fixed;inset:0;z-index:999;
  pointer-events:none;
  visibility:hidden;
  transition:visibility .4s;
}
.mobile-menu.is-open{
  pointer-events:auto;
  visibility:visible;
}
.mobile-menu-backdrop{
  position:absolute;inset:0;
  background:rgba(4,9,15,.6);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  opacity:0;
  transition:opacity .35s ease;
}
.mobile-menu.is-open .mobile-menu-backdrop{opacity:1}
.mobile-menu-panel{
  position:absolute;top:0;right:0;bottom:0;
  width:min(420px,88vw);
  background:linear-gradient(180deg,#050E1A 0%,#0A1929 100%);
  border-left:1px solid rgba(61,218,218,.18);
  box-shadow:-30px 0 60px -20px rgba(20,197,197,.25);
  display:flex;flex-direction:column;
  transform:translateX(100%);
  transition:transform .42s cubic-bezier(.4,0,.2,1);
  overflow-y:auto;
}
.mobile-menu.is-open .mobile-menu-panel{transform:translateX(0)}
.mobile-menu-panel::before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(61,218,218,.6),transparent);
}
.mobile-menu-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:18px 24px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.mobile-menu-header .brand{flex-shrink:0;color:#fff}
.mobile-menu-header .brand svg{width:24px;fill:#fff}

.mobile-menu-close{
  background:none;border:1px solid rgba(255,255,255,.16);
  width:38px;height:38px;border-radius:10px;color:#fff;
  display:grid;place-items:center;cursor:pointer;
  transition:background .25s ease,border-color .25s ease,transform .25s ease;
}
.mobile-menu-close:hover{
  background:rgba(61,218,218,.12);
  border-color:rgba(61,218,218,.4);
  transform:rotate(90deg);
}
.mobile-menu-close svg{width:18px;height:18px}
.mobile-menu-nav{
  display:flex;flex-direction:column;
  padding:16px 28px;
  flex:1;
}
.mobile-menu-link{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  column-gap:18px;
  padding:18px 0;
  color:rgba(255,255,255,.95);
  font-size:1.4rem;font-weight:500;letter-spacing:-.022em;
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.06);
  opacity:0;transform:translateX(20px);
  transition:opacity .4s ease,transform .4s ease,color .25s ease;
}
.mobile-menu-link:hover{color:var(--magenta-300)}
.mobile-menu-link:last-of-type{border-bottom:none}
.mobile-menu-link-num{
  font-size:.7rem;font-weight:700;letter-spacing:.22em;
  color:rgba(61,218,218,.55);
  font-variant-numeric:tabular-nums;
  font-family:'Familjen Grotesk',sans-serif;
  align-self:center;
  min-width:24px;
}
.mobile-menu-link svg{
  width:18px;height:18px;
  color:rgba(61,218,218,.4);
  transition:transform .3s ease,color .3s ease;
  justify-self:end;
}
.mobile-menu-link:hover svg{
  color:var(--magenta-300);
  transform:translateX(6px);
}
/* Stagger animation dos links quando abre */
.mobile-menu.is-open .mobile-menu-link{
  opacity:1;transform:translateX(0);
}
.mobile-menu.is-open .mobile-menu-link:nth-child(1){transition-delay:.15s}
.mobile-menu.is-open .mobile-menu-link:nth-child(2){transition-delay:.22s}
.mobile-menu.is-open .mobile-menu-link:nth-child(3){transition-delay:.29s}
.mobile-menu.is-open .mobile-menu-link:nth-child(4){transition-delay:.36s}
.mobile-menu.is-open .mobile-menu-link:nth-child(5){transition-delay:.43s}
.mobile-menu.is-open .mobile-menu-link:nth-child(6){transition-delay:.5s}

.mobile-menu-footer{
  display:flex;flex-direction:column;gap:14px;
  padding:24px;
  border-top:1px solid rgba(255,255,255,.06);
  opacity:0;transform:translateY(20px);
  transition:opacity .5s ease .55s,transform .5s ease .55s;
}
.mobile-menu.is-open .mobile-menu-footer{opacity:1;transform:translateY(0)}
.mobile-menu-cta{
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:16px 24px;border-radius:100px;
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  color:#fff;font-size:.95rem;font-weight:600;letter-spacing:-.005em;
  text-decoration:none;
  box-shadow:0 12px 32px -10px rgba(20,197,197,.6),inset 0 1px 0 rgba(255,255,255,.3);
  transition:transform .25s ease,box-shadow .25s ease;
}
.mobile-menu-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 38px -10px rgba(20,197,197,.85),inset 0 1px 0 rgba(255,255,255,.4);
}
.mobile-menu-cta svg{width:14px;height:14px;transition:transform .25s ease}
.mobile-menu-cta:hover svg{transform:translateX(3px)}
.mobile-menu-contacts{
  display:flex;flex-direction:column;gap:10px;
  margin-top:4px;
}
.mobile-menu-contact{
  display:flex;align-items:center;gap:12px;
  font-size:.85rem;color:rgba(255,255,255,.7);
  text-decoration:none;
  transition:color .25s ease;
}
.mobile-menu-contact:hover{color:#fff}
.mobile-menu-contact svg{
  width:16px;height:16px;
  color:rgba(61,218,218,.6);
  flex-shrink:0;
}

@media(max-width:991px){
  .sticky-header .nav{display:none}
  .sticky-menu-toggle{display:inline-flex}
  .sticky-cta{padding:9px 18px;font-size:.82rem}
}
@media(max-width:560px){
  .sticky-header{padding:12px 0}
  
  .sticky-cta{display:none}
  .mobile-menu-panel{width:100vw;border-left:none}
}
@media (prefers-reduced-motion: reduce){
  .sticky-header,
  .mobile-menu,
  .mobile-menu-panel,
  .mobile-menu-link,
  .mobile-menu-footer{transition:none}
  .mobile-menu-link{opacity:1;transform:none}
  .mobile-menu-footer{opacity:1;transform:none}
}

/* Travar scroll do body quando menu aberto */
body.menu-open{overflow:hidden}

/* ---------- hero content ---------- */
.hero-grid{
  display:grid;grid-template-columns:1.4fr 1fr;gap:0;
  grid-template-areas:
    "left right"
    "stats right";
  padding:12px 0 60px;align-items:center;position:relative;z-index:2;
}
.hero-left{grid-area:left}
.hero-right{grid-area:right}
.hero-stats{grid-area:stats;align-self:start}

/* LEFT */
.hero-left{display:flex;flex-direction:column;gap:0}
.tag-pill{
  display:inline-flex;align-items:center;gap:10px;width:fit-content;
  padding:8px 18px 8px 14px;border-radius:100px;
  background:rgba(255,255,255,.06);border:1px solid var(--line-strong);
  font-size:.86rem;font-weight:500;color:var(--white);
  margin-bottom:32px;
}
.tag-pill .star{
  width:14px;height:14px;color:var(--magenta-500);
}
.hero h1{
  font-size:clamp(2.1rem,3.6vw,3.3rem);font-weight:700;
  letter-spacing:-.025em;line-height:1.1;
  color:rgba(255,255,255,.78);
  max-width:26ch;margin-bottom:28px;
}
.hero h1 .key{
  color:var(--white);
}
.hero-break{display:inline}
@media(max-width:560px){.hero-break{display:none}}
.hero-sub{
  font-size:1.05rem;line-height:1.6;color:rgba(255,255,255,.82);
  max-width:58ch;font-weight:400;margin-bottom:40px;
}
.hero-sub strong{
  font-weight:600;color:var(--white);
}

/* CTA principal · magenta brilhante */
.btn-primary{
  display:inline-flex;align-items:center;gap:14px;
  padding:18px 32px;border-radius:100px;border:none;
  background:linear-gradient(135deg,var(--magenta-500) 0%,var(--magenta-600) 100%);
  color:var(--white);font-size:1rem;font-weight:600;letter-spacing:-.005em;
  box-shadow:
    0 0 0 1px rgba(61,218,218,.4),
    0 12px 32px -8px rgba(20,197,197,.6),
    inset 0 1px 0 rgba(255,255,255,.3);
  transition:transform .25s ease,box-shadow .25s ease,filter .25s ease;
  width:fit-content;
}
.btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:
    0 0 0 1px rgba(61,218,218,.6),
    0 18px 40px -8px rgba(20,197,197,.75),
    inset 0 1px 0 rgba(255,255,255,.4);
  filter:brightness(1.1);
}
.btn-primary:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(61,218,218,.5),0 18px 40px -8px rgba(20,197,197,.75)}
.btn-primary .arrow{
  display:grid;place-items:center;width:32px;height:32px;border-radius:50%;
  background:var(--white);color:var(--magenta-600);
  transition:transform .25s ease;
}
.btn-primary:hover .arrow{transform:translateX(3px)}
.btn-primary .arrow svg{width:14px;height:14px}

/* CTA secundário · Fale com um especialista */
.btn-ghost{
  display:inline-flex;align-items:center;gap:12px;
  padding:0 26px;height:64px;border-radius:100px;
  border:1.5px solid rgba(5,14,26,.18);background:transparent;
  color:#050E1A;font-size:1rem;font-weight:600;letter-spacing:-.005em;
  transition:border-color .25s ease,background .25s ease,transform .25s ease;
  width:fit-content;
}
.btn-ghost:hover{border-color:rgba(5,14,26,.4);background:rgba(5,14,26,.05);transform:translateY(-2px)}
.btn-ghost:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(20,197,197,.5)}
.btn-ghost svg{width:20px;height:20px;flex-shrink:0;color:#128C7E}
@media(max-width:560px){.btn-ghost{height:56px;padding:0 22px;font-size:.94rem}}

/* CTA row */
.hero-cta-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.hero-cta-buttons{display:flex;align-items:center;gap:16px;flex-wrap:wrap}

/* ===================================================================
   HERO MARQUEE · Quem confia na DataLP (canto inferior direito)
   =================================================================== */
.hero-marquee{
  flex:1;min-width:260px;width:auto;
  margin:55px 0 0 clamp(120px,20vw,400px);
  display:flex;flex-direction:column;gap:10px;
  align-self:center;
}
.hero-marquee-label{
  font-size:.74rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--text-muted);
}
.hero-marquee-viewport{
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
}
.hero-marquee-track{
  display:flex;width:max-content;
  animation:hero-marquee-scroll 45s linear infinite;
}
.hero-marquee:hover .hero-marquee-track{animation-play-state:paused}
@keyframes hero-marquee-scroll{to{transform:translateX(-50%)}}
.trust-logo{
  display:grid;place-items:center;flex-shrink:0;
  height:44px;margin-right:46px;position:relative;
  filter:none;opacity:1;
}
.trust-logo::after{
  content:"";position:absolute;right:-25px;top:50%;transform:translateY(-50%);
  width:4px;height:4px;border-radius:50%;background:rgba(5,14,26,.20);
}
.trust-logo img{max-height:28px;max-width:180px;width:auto;height:auto;object-fit:contain;display:block}
@media(max-width:900px){
  .hero-marquee{margin:28px 0 0;flex-basis:100%}
}
@media(prefers-reduced-motion:reduce){
  .hero-marquee-track{animation:none}
}

/* stats row */
.hero-stats{
  display:flex;gap:48px;margin-top:72px;padding-top:32px;
  flex-wrap:wrap;width:fit-content;max-width:100%;
  position:relative;
  opacity:0;transform:translateY(20px);
  transition:opacity .7s ease,transform .7s ease;
}
.hero-stats.is-visible{opacity:1;transform:translateY(0)}
.hero-stats::before{
  content:"";position:absolute;top:0;left:0;width:0;height:2px;
  background:linear-gradient(90deg,var(--magenta-500) 0%,transparent 100%);
  border-radius:2px;
  transition:width 1.1s cubic-bezier(.4,0,.2,1) .25s;
}
.hero-stats.is-visible::before{width:100%}
.stat-item{
  display:flex;flex-direction:column;gap:6px;
  opacity:0;transform:translateY(12px);
  transition:opacity .55s ease,transform .55s ease;
}
.hero-stats.is-visible .stat-item{opacity:1;transform:translateY(0)}
.hero-stats.is-visible .stat-item:nth-child(1){transition-delay:.25s}
.hero-stats.is-visible .stat-item:nth-child(2){transition-delay:.35s}
.hero-stats.is-visible .stat-item:nth-child(3){transition-delay:.45s}
.hero-stats.is-visible .stat-item:nth-child(4){transition-delay:.55s}
.stat-num{
  font-size:clamp(1.7rem,2.4vw,2.1rem);font-weight:700;color:var(--white);
  letter-spacing:-.03em;line-height:1;
  font-variant-numeric:tabular-nums;
}
.stat-lbl{
  font-size:.86rem;color:var(--text-muted);font-weight:500;letter-spacing:.01em;
  max-width:20ch;
}

/* RIGHT · asset único (pattern + foto + selos já compostos) */
.hero-right{
  position:relative;width:115%;max-width:800px;
  margin-left:auto;margin-right:0;
  aspect-ratio:559/620;
  transform:translateX(-56px);
}
.hero-right::before{
  content:"";position:absolute;inset:-10% -10% -5% -10%;z-index:0;
  background:radial-gradient(ellipse at center,rgba(61,218,218,.35) 0%,transparent 65%);
  filter:blur(40px);pointer-events:none;
}
.hero-right img{
  position:relative;z-index:1;
  width:100%;height:100%;object-fit:contain;display:block;
  filter:drop-shadow(0 24px 60px rgba(0,0,0,.5));
}

/* ===================================================================
   RESPONSIVE
   =================================================================== */
@media(max-width:1100px){
  :root{--pad-h:32px}
  .hero-grid{gap:40px;padding:32px 0 60px}
  .hero-right{max-width:480px}
  .hero-stats{gap:28px}
}

@media(max-width:900px){
  .nav{display:none}
  .menu-toggle{display:inline-flex}
  .hero-grid{grid-template-columns:1fr;grid-template-areas:none;gap:32px;padding:24px 0 48px}
  .hero-left,.hero-right,.hero-stats{grid-area:auto}
  .hero h1{max-width:18ch}
  .hero-right{margin:0 auto;max-width:440px;width:100%;margin-right:0;order:99;transform:none}
  .hero-stats{margin-top:0;gap:24px;order:50;align-self:auto}
}

@media(max-width:560px){
  :root{--pad-h:35px}
  .header{padding:18px 0}
  
  .hero-grid{padding:16px 0 40px}
  .tag-pill{font-size:.78rem;padding:7px 14px 7px 12px;margin-bottom:24px}
  .hero h1{font-size:clamp(1.9rem,7vw,2.6rem);max-width:none;margin-bottom:24px}
  .hero-sub{font-size:.96rem;margin-bottom:32px}
  .btn-primary{padding:15px 22px 15px 26px;font-size:.94rem}
  .btn-primary .arrow{width:28px;height:28px}
  .hero-cta-row{gap:12px}
  .hero-stats{margin-top:22px;gap:20px 24px}
  .stat-num{font-size:1.3rem}
  .stat-lbl{font-size:.72rem}
  .hero-right{max-width:360px}
}

@media(max-width:380px){
  :root{--pad-h:16px}
  .header-rule{margin-bottom:20px}
  .hero-stats{flex-direction:column;gap:16px}
  .hero-stats .stat-item{flex-direction:row;align-items:baseline;gap:10px}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:0.01ms!important;transition-duration:0.01ms!important;
  }
}

/* ===================================================================
   SEÇÃO MERCADO V2 · split editorial (2-col + cards + parallax)
   =================================================================== */
.section-mercado{
  background:#000;
  padding:140px 0;position:relative;overflow:hidden;
}
.section-mercado::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 60% 40% at 90% 20%,rgba(20,197,197,.1) 0%,transparent 60%),
    radial-gradient(ellipse 50% 40% at 10% 100%,rgba(14,155,155,.08) 0%,transparent 60%);
}
.mercado-wrap{
  max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);
  position:relative;z-index:1;
}
.mercado-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:stretch;
}

/* Inversão: visual à esquerda · texto à direita */
.mercado-visual{order:1}
.mercado-left{order:2}

/* LEFT · texto + cards */
.mercado-left{
  display:flex;flex-direction:column;justify-content:space-between;gap:80px;
}
.mercado-top{
  display:flex;flex-direction:column;gap:18px;max-width:540px;
}
.mercado-badge{
  display:inline-flex;align-items:center;gap:14px;width:fit-content;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-300);
}
.mercado-badge::before{
  content:"";width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-300));
}
/* badge 40% maior só na seção Sobre a DataLP (pedido do cliente jul/26) */
.section-mercado .mercado-badge{font-size:1.01rem}
.mercado-heading{
  font-size:clamp(2rem,3.2vw,2.8rem);font-weight:500;
  letter-spacing:-.035em;line-height:1.06;color:var(--white);margin:0;
}
.mercado-heading .soft{color:rgba(255,255,255,.55)}
.mercado-body{
  font-size:1rem;line-height:1.6;color:rgba(255,255,255,.72);
  max-width:44ch;margin:0;
}
.mercado-body strong{color:var(--white);font-weight:600}

/* CTA button c/ slide-up text + slide arrow */
.mercado-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:fit-content;padding:13px 22px;margin-top:12px;
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-700));
  color:var(--white);border-radius:32px;text-decoration:none;
  position:relative;
  box-shadow:0 8px 24px -8px rgba(20,197,197,.5),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .3s ease,box-shadow .3s ease,filter .3s ease;
}
.mercado-btn:hover{
  transform:translateY(-2px);filter:brightness(1.08);
  box-shadow:0 14px 36px -8px rgba(20,197,197,.7),inset 0 1px 0 rgba(255,255,255,.3);
}
.mercado-btn .btn-text-mask{
  overflow:hidden;height:22px;display:inline-block;line-height:22px;
}
.mercado-btn .btn-text-inner{
  display:flex;flex-direction:column;transition:transform .4s cubic-bezier(.6,.2,.2,1);
}
.mercado-btn .btn-text-inner span{
  display:block;font-size:.95rem;font-weight:600;line-height:22px;letter-spacing:-.005em;
}
.mercado-btn:hover .btn-text-inner{transform:translateY(-22px)}
.mercado-btn .btn-icon-mask{
  overflow:hidden;width:14px;height:14px;display:inline-flex;margin-left:8px;align-items:center;
}
.mercado-btn .btn-icon-inner{display:flex;transition:transform .4s cubic-bezier(.6,.2,.2,1)}
.mercado-btn:hover .btn-icon-inner{transform:translateX(14px)}
.mercado-btn .btn-icon-inner svg{width:14px;height:14px;flex:none;color:currentColor}

/* Cards · 2x2 sub-grid (stats) */
.mercado-cards{
  display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;
}
.m-card{
  position:relative;
  display:flex;flex-direction:column;justify-content:space-between;gap:28px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:12px;padding:24px;min-height:170px;overflow:hidden;
  transition:background .3s ease,border-color .3s ease,transform .3s ease;
}
.m-card:hover{
  background:rgba(255,255,255,.07);
  border-color:rgba(61,218,218,.28);
  transform:translateY(-3px);
}
.m-card::before{
  content:"";position:absolute;top:0;left:0;width:32px;height:2px;
  background:linear-gradient(90deg,var(--magenta-500),transparent);
  border-radius:2px;
}
.m-card-num{
  font-size:clamp(2rem,3vw,2.6rem);font-weight:500;letter-spacing:-.035em;
  line-height:1;color:var(--white);
  font-variant-numeric:tabular-nums;
}
.m-card-num .unit{font-size:.55em;font-weight:500;opacity:.65;margin-left:2px}
.m-card-text{display:flex;flex-direction:column;gap:3px}
.m-card-title{font-size:.95rem;font-weight:500;color:var(--white)}
.m-card-body{font-size:.82rem;line-height:1.4;color:rgba(255,255,255,.55)}

/* RIGHT · panel com foto da equipe */
.mercado-visual{
  position:relative;border-radius:16px;overflow:hidden;min-height:680px;
  background:#0A1929 radial-gradient(120% 120% at 82% 18%,rgba(20,197,197,.22) 0%,transparent 60%) no-repeat;
  border:1px solid rgba(255,255,255,.08);
}
.mercado-visual::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse 60% 40% at 50% 100%,rgba(20,197,197,.22) 0%,transparent 60%);
}
.mercado-visual-mark{display:none}
.mercado-visual-content{
  position:absolute;inset:0;z-index:3;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:40px;
}


@keyframes visualTagPulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.5;transform:scale(.85)}
}
/* Callout tile · usa hero-bg como background atmosférico */
.mercado-visual-callout{
  position:relative;
  display:flex;flex-direction:column;gap:10px;
  padding:24px 28px;border-radius:20px;
  background:radial-gradient(125% 95% at 80% 8%,rgba(20,197,197,.28) 0%,rgba(14,95,107,.10) 42%,transparent 72%) no-repeat;
  border:1px solid rgba(61,218,218,.18);
  box-shadow:
    0 20px 48px -12px rgba(14,155,155,.45),
    inset 0 1px 0 rgba(255,255,255,.08);
  width:fit-content;max-width:100%;
  overflow:hidden;
  isolation:isolate;
}
.mercado-visual-callout::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(ellipse 60% 50% at 50% 100%,rgba(14,155,155,.35) 0%,transparent 65%),
    linear-gradient(135deg,rgba(2,5,9,.35) 0%,rgba(5,12,22,.25) 50%,rgba(8,18,30,.4) 100%);
}
.mercado-visual-callout::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:linear-gradient(
    115deg,
    transparent 0%,
    transparent 30%,
    rgba(255,255,255,.08) 42%,
    rgba(122,240,240,.28) 50%,
    rgba(255,255,255,.08) 58%,
    transparent 70%,
    transparent 100%
  );
  background-size:250% 100%;
  animation:callout-shimmer 6s ease-in-out infinite;
  mix-blend-mode:overlay;
}
@keyframes callout-shimmer{
  0%   {background-position:200% 0}
  100% {background-position:-150% 0}
}
@media (prefers-reduced-motion: reduce){
  .mercado-visual-callout::after{animation:none}
}
.callout-label{
  display:inline-flex;align-items:center;gap:8px;width:fit-content;
  padding:6px 12px;border-radius:100px;
  background:rgba(0,0,0,.6);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:#fff;
  position:relative;z-index:1;
  margin-bottom:4px;
}
.callout-label::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--magenta-300);
  box-shadow:0 0 8px rgba(61,218,218,.8);
  animation:visualTagPulse 2.2s ease-in-out infinite;
}
.callout-value{
  font-size:clamp(1.5rem,2.4vw,2rem);font-weight:500;
  letter-spacing:-.025em;line-height:1.15;color:#fff;max-width:18ch;
  text-shadow:0 1px 12px rgba(14,155,155,.3);
  position:relative;z-index:1;
}
.callout-value strong{
  font-weight:700;
  background:linear-gradient(90deg,var(--magenta-300),var(--magenta-500));
  -webkit-background-clip:text;background-clip:text;
  color:transparent;
  filter:drop-shadow(0 1px 12px rgba(61,218,218,.4));
}

@media(max-width:991px){
  .section-mercado{padding:80px 0}
  .mercado-grid{grid-template-columns:1fr;gap:48px}
  /* mobile: texto primeiro, depois foto, depois cards */
  .mercado-left{display:contents}
  .mercado-top{order:1}
  .mercado-visual{order:2}
  .mercado-cards{order:3}
  /* panel da foto escapa do --pad-h do wrap (edge-to-edge da viewport) */
  .mercado-visual{
    min-height:560px;aspect-ratio:4/5;
    margin-left:calc(-1 * var(--pad-h));
    margin-right:calc(-1 * var(--pad-h));
    border-radius:0;border:0;
  }
  /* callout edge-to-edge dentro do panel */
  .mercado-visual-content{padding:0;inset:0}
  .mercado-visual-callout{
    width:100%;max-width:100%;
    margin:0;border:0;border-radius:0;
    box-sizing:border-box;
  }
}
@media(max-width:560px){
  .section-mercado{padding:60px 0}
  .mercado-cards{grid-template-columns:1fr}
  .m-card{min-height:auto;padding:20px;gap:20px}
  .m-card-num{font-size:1.9rem}
  .mercado-visual{min-height:580px;aspect-ratio:3/4}
}
@media(max-width:380px){
  .mercado-visual{min-height:520px}
}

/* ===================================================================
   SEÇÃO PARA QUEM É · header centralizado + 4 perfis-alvo
   =================================================================== */




/* Header centralizado */

.perfil-badge{
  display:inline-flex;align-items:center;gap:14px;width:fit-content;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-600);
}
.perfil-badge::before{
  content:"";width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-600));
}
.perfil-heading{
  font-size:clamp(2rem,3.4vw,3rem);font-weight:500;
  letter-spacing:-.035em;line-height:1.06;color:#0A1929;margin:0;
}
.perfil-heading .soft{color:rgba(10,25,41,.56)}



/* Grid 4-col · 6 perfis + 1 imagem (spans 2 rows) */

.perfil-card{
  position:relative;overflow:hidden;
  background:#fff;border:1px solid rgba(10,25,41,.06);
  border-radius:12px;padding:22px;
  display:flex;flex-direction:column;justify-content:space-between;gap:36px;
  min-height:210px;
  box-shadow:0 1px 2px rgba(10,25,41,.02);
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.perfil-card::before{
  content:"";position:absolute;top:0;left:0;width:48px;height:2px;
  background:linear-gradient(90deg,var(--magenta-500),transparent);
  border-radius:2px;
  transition:width .4s ease;
}
.perfil-card:hover{
  transform:translateY(-3px);
  border-color:rgba(61,218,218,.32);
  box-shadow:0 16px 36px -18px rgba(10,25,41,.18);
}
.perfil-card:hover::before{width:90px}





/* Imagem de franqueado · spans 2 rows na col 2 */
.perfil-image{
  position:relative;overflow:hidden;border-radius:12px;
  grid-column:2;grid-row:1 / span 2;
  background:#0A1929;
  min-height:210px;
}
.perfil-image img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .8s cubic-bezier(.2,.6,.2,1);
}
.perfil-image:hover img{transform:scale(1.04)}
.perfil-image::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 50%,rgba(10,25,41,.5) 100%);
}


/* Transparência intro · entre grid de perfis e lista negativa */
.perfil-transparency{
  display:flex;flex-direction:column;align-items:center;text-align:center;
  gap:14px;max-width:680px;margin:0 auto 36px;
}




/* Lista negativa "Não é para" · vertical list compacta */









/* Manifesto editorial · fechamento da seção · clean light */
.perfil-quote{
  position:relative;
  max-width:820px;margin:80px auto 0;padding:0 24px;
  text-align:center;
  background:none;border:none;
}
.perfil-quote::before{
  content:"";display:block;
  width:64px;height:2px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-300));
  border-radius:2px;
  margin:0 auto 36px;
}




@media(max-width:991px){
  
  
  
  .perfil-image{grid-column:1 / -1;grid-row:auto;min-height:280px}
  .perfil-card{padding:20px;min-height:180px}
  
  
  
  .perfil-quote{margin-top:64px}
  .perfil-quote::before{margin-bottom:28px}
  /* Reordena: imagem aparece depois de Bancários ou ex-bancários */
    /* Executivos */
    /* Profissionais liberais */
    /* Bancários ou ex-bancários */
  .perfil-image{order:4}
    /* Empreendedores */
    /* Pessoas com perfil comercial */
    /* Investidores */
}
@media(max-width:560px){
  
  
  
  .perfil-image{min-height:240px}
  .perfil-card{padding:18px;min-height:auto;gap:24px}
  
  .perfil-transparency{margin-bottom:24px;gap:10px}
  
  
  .perfil-quote{margin-top:52px;padding:0 20px}
  .perfil-quote::before{width:48px;margin-bottom:24px}
  
}

/* ===================================================================
   SEÇÃO MODELO · LIGHT · bento grid 5 pilares + CTA com micro-interação
   =================================================================== */
.section-modelo{
  position:relative;overflow:hidden;
  padding:140px 0 160px;
  background:#eeeef1;
  color:#0A1929;
}
.section-modelo::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 60% 40% at 15% 5%,rgba(20,197,197,.06) 0%,transparent 60%),
    radial-gradient(ellipse 50% 35% at 90% 95%,rgba(14,155,155,.05) 0%,transparent 60%);
}
.modelo-wrap{
  max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);
  position:relative;z-index:1;
}

/* Header centralizado */
.modelo-header{
  display:flex;flex-direction:column;align-items:center;text-align:center;
  gap:18px;max-width:720px;margin:0 auto 72px;
}
.modelo-badge{
  display:inline-flex;align-items:center;gap:14px;width:fit-content;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-600);
}
.modelo-badge::before{
  content:"";width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-600));
}
.modelo-heading{
  font-size:clamp(2rem,3.6vw,3.2rem);font-weight:500;
  letter-spacing:-.035em;line-height:1.04;color:#0A1929;margin:0;
}
.modelo-heading .soft{color:rgba(10,25,41,.56)}
.modelo-body{
  font-size:1.05rem;line-height:1.6;color:rgba(10,25,41,.7);max-width:56ch;margin:0;
}

/* CTA pill magenta com text-mask hover */
.modelo-cta{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  padding:14px 22px;border-radius:32px;
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  color:#fff;font-weight:600;font-size:.96rem;letter-spacing:-.01em;
  margin-top:8px;border:0;cursor:pointer;
  box-shadow:0 10px 28px -10px rgba(20,197,197,.45),inset 0 1px 0 rgba(255,255,255,.3);
  transition:transform .3s ease,box-shadow .3s ease;
}
.modelo-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 38px -10px rgba(20,197,197,.6),inset 0 1px 0 rgba(255,255,255,.4);
}
.modelo-cta-text{
  position:relative;overflow:hidden;height:22px;display:block;line-height:22px;
}
.modelo-cta-text .stack{
  display:flex;flex-direction:column;
  transition:transform .35s cubic-bezier(.6,.05,.3,1);
}
.modelo-cta-text .stack span{display:block;height:22px;line-height:22px}
.modelo-cta:hover .modelo-cta-text .stack{transform:translateY(-22px)}

.modelo-cta-arrow{
  position:relative;width:16px;height:16px;margin-left:10px;overflow:hidden;
}
.modelo-cta-arrow .arrows{
  display:flex;flex-direction:column;
  transition:transform .35s cubic-bezier(.6,.05,.3,1);
}
.modelo-cta-arrow svg{width:16px;height:16px;flex:none}
.modelo-cta:hover .modelo-cta-arrow .arrows{transform:translateY(-16px)}

/* Bento grid · 3 col × 2 row · chamada central spans 2 rows */
.modelo-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:auto auto;
  gap:14px;
}
.modelo-card{
  position:relative;overflow:hidden;
  background:#ffffff;
  border:1px solid rgba(10,25,41,.06);
  border-radius:20px;padding:36px;
  display:flex;flex-direction:column;justify-content:space-between;gap:48px;
  min-height:280px;
  box-shadow:0 1px 2px rgba(10,25,41,.02);
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;
}
.modelo-card::before{
  content:"";position:absolute;top:0;left:0;width:80px;height:2px;
  background:linear-gradient(90deg,var(--magenta-500),transparent);
  border-radius:2px;transition:width .4s ease;
}
.modelo-card::after{
  content:"";position:absolute;bottom:-40%;left:-20%;width:80%;height:80%;
  background:radial-gradient(ellipse at center,rgba(61,218,218,.08) 0%,transparent 60%);
  pointer-events:none;opacity:0;transition:opacity .4s ease;
}
.modelo-card:hover{
  transform:translateY(-4px);
  border-color:rgba(61,218,218,.4);
  box-shadow:0 18px 40px -18px rgba(10,25,41,.18);
}
.modelo-card:hover::before{width:140px}
.modelo-card:hover::after{opacity:1}

/* Featured · imagem de bg + overlay preto · spans 2 rows · âncora visual */
.modelo-card.featured{
  grid-row:span 2;
  background:linear-gradient(150deg,#0E5F6B 0%,#0A1929 72%) no-repeat;
  border-color:rgba(61,218,218,.3);
  color:#fff;
  gap:32px;
  box-shadow:0 18px 50px -20px rgba(14,155,155,.55);
  isolation:isolate;
}
.modelo-card.featured::before{
  width:140px;z-index:2;
  background:linear-gradient(90deg,var(--magenta-300),transparent);
}
.modelo-card.featured::after{
  opacity:1;
  bottom:-30%;width:100%;left:0;z-index:0;
  background:radial-gradient(ellipse at center,rgba(61,218,218,.22) 0%,transparent 65%);
}
.modelo-card.featured:hover{
  box-shadow:0 26px 60px -20px rgba(14,155,155,.7);
}
.modelo-card.featured > *{position:relative;z-index:1}

/* Featured · ícone topo · glass panel empurrado pra base */
.modelo-card.featured{justify-content:space-between}


.modelo-featured-glass{
  margin-top:auto;
  display:flex;flex-direction:column;gap:22px;
  padding:26px 26px 24px;
  border-radius:18px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 8px 24px -8px rgba(0,0,0,.4);
}




/* Ícones */












/* Detalhe extra no featured */



@media(max-width:991px){
  .section-modelo{padding:90px 0 110px}
  .modelo-header{margin-bottom:52px}
  .modelo-grid{grid-template-columns:repeat(2,1fr)}
  .modelo-card{padding:30px;min-height:240px}
  .modelo-card.featured{grid-row:auto;grid-column:span 2}
}
@media(max-width:700px){
  .modelo-grid{grid-template-columns:1fr}
  .modelo-card{grid-column:auto;padding:26px;min-height:auto;gap:32px}
  /* Featured · imagem ocupa o topo, glass panel ancorado na base */
  .modelo-card.featured{
    grid-column:auto;
    padding:26px;
    gap:24px;
    min-height:720px;
    background-size:cover;
    background-position:center top;
    order:-1;
  }
}
@media(max-width:560px){
  .section-modelo{padding:70px 0 90px}
  .modelo-header{margin-bottom:40px;gap:14px}
  .modelo-card{padding:24px;gap:28px}
  
  
  
  .modelo-card.featured{min-height:640px;padding:22px}
  
}

/* ===================================================================
   SEÇÃO PROPOSTA · headline impactante + bridge + 5 diferenciais
   =================================================================== */


/* Divisor stylizado · gradient magenta como o header-rule */



@keyframes divider-pulse{
  0%,100%{opacity:1;transform:translate(-50%,-50%) scale(1)}
  50%{opacity:.6;transform:translate(-50%,-50%) scale(.7)}
}



/* Block 1: Hero centralizado · promise */

.proposta-eyebrow{
  display:inline-flex;align-items:center;gap:14px;width:fit-content;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-300);margin:0;
}
.proposta-eyebrow::before{
  content:"";width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-300));
}
.proposta-bighead{
  font-size:clamp(2rem,4vw,3.6rem);font-weight:500;
  letter-spacing:-.035em;line-height:1.04;
  color:var(--white);margin:0;
}
.proposta-bighead .num{
  background:linear-gradient(135deg,var(--magenta-300),var(--magenta-500),var(--magenta-600));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  white-space:nowrap;
}
.proposta-bighead .soft{
  display:inline;font-weight:500;letter-spacing:-.025em;
  color:rgba(255,255,255,.55);text-transform:none;
}
.proposta-sub{
  font-size:1.1rem;line-height:1.55;
  color:rgba(255,255,255,.72);max-width:64ch;margin:8px 0 0;
}

/* CTA pill com text-mask hover */
.proposta-cta{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  padding:16px 26px;border-radius:999px;margin-top:14px;border:0;cursor:pointer;
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  color:#fff;font-weight:600;font-size:1rem;letter-spacing:-.01em;
  box-shadow:0 12px 32px -12px rgba(20,197,197,.6),inset 0 1px 0 rgba(255,255,255,.3);
  transition:transform .3s ease,box-shadow .3s ease;
}
.proposta-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 42px -12px rgba(20,197,197,.8),inset 0 1px 0 rgba(255,255,255,.4);
}









/* Block 3: Bridge / transição */





/* Block 2: Split editorial · vídeo + bridge & lista minimalista */
.proposta-split{
  display:grid;grid-template-columns:1fr 1fr;gap:56px;
  align-items:start;
  max-width:1200px;margin:0 auto;
}










/* Lista numerada minimalista */








/* Vídeo institucional · thumbnail + click YouTube */












/* Block 4: 5 cards numerados · 2 colunas (5º spans full) */









/* Número editorial · watermark canto superior direito */










@media(max-width:991px){
  
  
  .proposta-split{grid-template-columns:1fr;gap:40px}
  
  
  
}
@media(max-width:560px){
  
  
  .proposta-sub{font-size:1rem}
  .proposta-cta{padding:14px 22px;font-size:.95rem}
  .proposta-split{gap:32px}
  
  
  
  
}

/* ===================================================================
   SEÇÃO SUPORTE · template dark com headline row + cards visual/content
   =================================================================== */



/* Headline row · split horizontal (heading esq + body+CTA dir) */



.suporte-heading{
  font-size:clamp(2.2rem,3.6vw,3rem);font-weight:600;
  letter-spacing:-.035em;line-height:1.04;
  color:#f6f3f0;margin:0;
}
.suporte-heading .soft{color:rgba(246,243,240,.48)}
.suporte-body{
  font-size:1rem;line-height:1.55;color:rgba(246,243,240,.88);margin:0;
}
.suporte-body strong{color:#f6f3f0;font-weight:600}

/* Tertiary CTA (inline link com seta) */
.suporte-tertiary{
  display:inline-flex;align-items:center;gap:10px;
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:#f6f3f0;text-decoration:none;
  align-self:flex-start;
  transition:color .3s ease;
}
.suporte-tertiary:hover{color:var(--magenta-300)}

.suporte-tertiary svg{
  width:14px;height:14px;
  transition:transform .35s cubic-bezier(.6,.05,.3,1);
}
.suporte-tertiary:hover svg{transform:translateX(4px)}

/* Grid 3 cols × 2 rows · cards com visual top + content panel bottom */

.suporte-card{
  display:grid;grid-template-rows:auto 1fr;
  border-radius:12px;overflow:hidden;
  background:#f6f3f0;
  transition:transform .4s ease;
}
.suporte-card:hover{transform:translateY(-4px)}

/* Visual area no topo do card */









/* Imagem opcional no fundo do visual area · sobreposta pelos overlays magenta */





/* Content panel inferior · light cream */




/* CTA centralizado abaixo do grid */













@media(max-width:767px){
  
  .suporte-heading{font-size:2.25rem}
  
  
  
  
  
  
  
  
  
  
}

/* ===================================================================
   SEÇÃO JORNADA · timeline vertical com 11 passos numerados
   =================================================================== */



/* Grid split 2 cols · heading esq (sticky) + timeline dir */


/* LEFT · heading block sticky */


.jornada-eyebrow{
  display:inline-flex;align-items:center;gap:14px;width:fit-content;
  margin-bottom:28px;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-600);
}
.jornada-eyebrow::before{
  content:"";width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-600));
}
.jornada-heading{
  font-size:clamp(1.8rem,3vw,2.6rem);font-weight:500;
  letter-spacing:-.025em;line-height:1.15;
  color:#0A1929;margin:0;
}
.jornada-heading .soft{color:rgba(10,25,41,.6)}

/* RIGHT · timeline com linha animada */
.jornada-timeline-wrap{
  position:relative;
  display:grid;grid-template-columns:auto 1fr;gap:0;
}


.jornada-line-fill{
  position:absolute;top:0;left:0;
  width:2px;height:0%;
  background:linear-gradient(180deg,var(--magenta-500),var(--magenta-600));
  box-shadow:0 0 8px rgba(61,218,218,.4);
  transition:height .15s ease-out;
  will-change:height;
}

.jornada-timeline{
  list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;
}
.jornada-step{
  position:relative;
  display:grid;grid-template-columns:64px 1fr;gap:28px;
  padding:0 0 56px 32px;
}
.jornada-step:last-child{padding-bottom:0}

/* Dot quadrado (estilo reference) */
.jornada-step::before{
  content:"";position:absolute;
  left:-6px;top:4px;
  width:14px;height:14px;border-radius:3px;
  background:var(--magenta-500);
  box-shadow:0 0 0 4px #f6f4f1,0 0 0 5px rgba(61,218,218,.25);
  transition:transform .35s ease,box-shadow .35s ease;
}
.jornada-step:hover::before{
  transform:scale(1.2);
  box-shadow:0 0 0 4px #f6f4f1,0 0 0 6px rgba(61,218,218,.45),0 0 16px rgba(61,218,218,.5);
}







@media(max-width:991px){
  
  
  
  .jornada-step{grid-template-columns:56px 1fr;gap:20px;padding-bottom:48px;padding-left:28px}
}
@media(max-width:560px){
  
  
  .jornada-eyebrow{margin-bottom:18px}
  .jornada-step{grid-template-columns:48px 1fr;gap:14px;padding-bottom:40px;padding-left:24px}
  .jornada-step::before{left:-4px;width:12px;height:12px}
  
  
}

/* ===================================================================
   SEÇÃO MARCA · template dark · headline split + cards expansíveis
   =================================================================== */
.section-marca{
  position:relative;overflow:hidden;
  padding:120px 0;
  background:#050E1A;
}
.section-marca::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 50% 35% at 20% 30%,rgba(61,218,218,.08) 0%,transparent 60%),
    radial-gradient(ellipse 50% 35% at 80% 70%,rgba(14,155,155,.06) 0%,transparent 60%);
}
.marca-wrap{
  max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);
  position:relative;z-index:1;
}

/* Headline split · label+heading esq | body+link dir */
.marca-headline{
  display:flex;justify-content:space-between;align-items:flex-end;gap:48px;
  margin-bottom:64px;
}
.marca-headline-left{
  display:flex;flex-direction:column;align-items:flex-start;gap:24px;
  max-width:540px;
}
.marca-headline-right{
  display:flex;flex-direction:column;align-items:flex-end;gap:16px;
  max-width:380px;text-align:right;
}
.marca-badge{
  display:inline-flex;align-items:center;gap:14px;width:fit-content;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-300);
}
.marca-badge::before{
  content:"";width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-300));
}
.marca-heading{
  font-size:clamp(2rem,3.6vw,3rem);font-weight:500;
  letter-spacing:-.035em;line-height:1.06;color:#fff;margin:0;
}
.marca-heading em{
  font-style:italic;font-weight:400;
  background:linear-gradient(90deg,var(--magenta-300),var(--magenta-500));
  -webkit-background-clip:text;background-clip:text;
  color:transparent;
}
.marca-headline-body{
  font-size:.98rem;line-height:1.5;
  color:rgba(255,255,255,.75);margin:0;
}
.marca-headline-link{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:#fff;text-decoration:underline;text-underline-offset:6px;
  text-decoration-color:rgba(61,218,218,.5);
  transition:color .3s ease,text-decoration-color .3s ease;
}
.marca-headline-link:hover{
  color:var(--magenta-300);
  text-decoration-color:var(--magenta-300);
}

/* Carrossel de depoimentos em vídeo · scroll-snap + arrows */
.marca-carousel{
  position:relative;
}
.marca-carousel-track{
  display:flex;gap:16px;
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding-bottom:8px;
}
.marca-carousel-track::-webkit-scrollbar{display:none}

.marca-video-card{
  flex:0 0 calc(33.333% - 11px);
  scroll-snap-align:start;
  position:relative;overflow:hidden;border-radius:12px;
  height:480px;
  background:linear-gradient(135deg,#0A1929 0%,#050E1A 60%,#03070C 100%);
  cursor:pointer;
  transition:transform .35s ease;
}
.marca-video-card:hover{transform:translateY(-4px)}

.marca-video-card video,
.marca-video-card .marca-video-poster{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;
  z-index:0;
}

.marca-video-card video{opacity:0;transition:opacity .35s ease}
.marca-video-card.playing video{opacity:1}


.marca-video-card::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(4,9,15,.5) 0%,rgba(4,9,15,0) 35%),
    linear-gradient(0deg,rgba(4,9,15,.75) 0%,rgba(4,9,15,0) 50%);
  transition:opacity .35s ease;
}




/* Play button funcional · centro do card */
.marca-video-play-btn{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  z-index:3;
  width:72px;height:72px;border-radius:50%;border:0;cursor:pointer;
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  display:grid;place-items:center;color:#fff;
  box-shadow:
    0 14px 36px -10px rgba(20,197,197,.7),
    inset 0 1px 0 rgba(255,255,255,.35),
    0 0 0 8px rgba(61,218,218,.12),
    0 0 0 1px rgba(61,218,218,.4);
  transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s ease,box-shadow .35s ease;
}
.marca-video-play-btn:hover{
  transform:translate(-50%,-50%) scale(1.1);
  box-shadow:
    0 20px 44px -10px rgba(20,197,197,.85),
    inset 0 1px 0 rgba(255,255,255,.45),
    0 0 0 12px rgba(61,218,218,.18),
    0 0 0 1px rgba(61,218,218,.5);
}
.marca-video-play-btn:focus-visible{
  outline:2px solid var(--magenta-300);outline-offset:4px;
}
.marca-video-play-btn svg{width:26px;height:26px;margin-left:3px}

/* Modal/Lightbox · play em box centralizada */
.marca-modal[hidden]{display:none!important}
.marca-modal{
  position:fixed;inset:0;z-index:100;
  display:grid;place-items:center;
  padding:32px;
  animation:marcaModalFade .3s ease;
}
@keyframes marcaModalFade{
  from{opacity:0}to{opacity:1}
}
.marca-modal-backdrop{
  position:absolute;inset:0;
  background:rgba(4,9,15,.88);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  cursor:pointer;
}
.marca-modal-content{
  position:relative;z-index:1;
  width:100%;max-width:1080px;
  display:flex;flex-direction:column;gap:18px;
  animation:marcaModalScale .4s cubic-bezier(.4,0,.2,1);
}
@keyframes marcaModalScale{
  from{opacity:0;transform:scale(.94)}
  to{opacity:1;transform:scale(1)}
}
.marca-modal-close{
  position:absolute;top:-56px;right:0;z-index:2;
  width:44px;height:44px;border-radius:50%;border:0;cursor:pointer;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  display:grid;place-items:center;
  transition:background .3s ease,border-color .3s ease,transform .3s ease;
}
.marca-modal-close:hover{
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  border-color:transparent;transform:scale(1.05);
}
.marca-modal-close:focus-visible{
  outline:2px solid var(--magenta-300);outline-offset:3px;
}
.marca-modal-close svg{width:18px;height:18px}
.marca-modal-video-wrap{
  position:relative;
  aspect-ratio:16/9;
  background:#000;
  border-radius:14px;overflow:hidden;
  box-shadow:
    0 32px 80px -20px rgba(20,197,197,.5),
    0 0 0 1px rgba(61,218,218,.2);
}
.marca-modal-video-wrap video{
  width:100%;height:100%;display:block;
  object-fit:contain;
  background:#000;
}
.marca-modal-meta{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  padding:0 4px;
  color:#fff;
}
.marca-modal-title{
  font-size:1.1rem;font-weight:600;letter-spacing:-.01em;color:#fff;
}
.marca-modal-subtitle{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 12px;border-radius:100px;
  background:rgba(61,218,218,.12);
  border:1px solid rgba(61,218,218,.28);
  font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--magenta-300);
}
.marca-modal-subtitle::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--magenta-500);
  box-shadow:0 0 8px rgba(61,218,218,.7);
}
body.modal-open{overflow:hidden}

@media(max-width:700px){
  .marca-modal{padding:16px}
  .marca-modal-close{top:-50px;width:40px;height:40px}
  .marca-modal-video-wrap{border-radius:10px}
}




.marca-video-author{
  font-size:1.05rem;font-weight:600;letter-spacing:-.01em;
  color:#fff;
}
.marca-video-meta{
  font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(61,218,218,.85);
}

/* Arrows nav */
.marca-carousel-nav{
  display:flex;justify-content:flex-end;gap:10px;
  margin-top:24px;
}
.marca-carousel-arrow{
  width:48px;height:48px;border-radius:50%;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  display:grid;place-items:center;
  cursor:pointer;
  transition:background .3s ease,border-color .3s ease,transform .3s ease;
}
.marca-carousel-arrow:hover{
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  border-color:transparent;
  transform:translateY(-2px);
}
.marca-carousel-arrow svg{width:18px;height:18px}
.marca-carousel-arrow:disabled{
  opacity:.35;cursor:not-allowed;
  background:rgba(255,255,255,.04);
}
.marca-carousel-arrow:disabled:hover{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.16);
  transform:none;
}

/* Bloco de avaliações do Google */
.marca-reviews{
  margin-top:96px;
  padding-top:64px;
  border-top:1px solid rgba(255,255,255,.08);
}
.marca-reviews-headline{
  display:flex;justify-content:space-between;align-items:flex-end;gap:48px;
  margin-bottom:48px;
}
.marca-reviews-left{
  display:flex;flex-direction:column;gap:18px;max-width:540px;
}
.marca-reviews-badge{
  display:inline-flex;align-items:center;gap:14px;width:fit-content;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-300);
}
.marca-reviews-badge::before{
  content:"";width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-300));
}
.marca-reviews-heading{
  font-size:clamp(2rem,3.6vw,3rem);font-weight:500;
  letter-spacing:-.035em;line-height:1.06;
  color:#fff;margin:0;
}
.marca-reviews-heading em{
  font-style:italic;font-weight:400;
  background:linear-gradient(90deg,var(--magenta-300),var(--magenta-500));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.marca-reviews-rating{
  display:flex;flex-direction:column;align-items:flex-end;gap:6px;
  min-width:200px;
}
.marca-reviews-score{
  display:flex;align-items:baseline;gap:8px;
}
.marca-reviews-score-num{
  font-size:clamp(2.8rem,4vw,3.4rem);
  line-height:1;font-weight:500;letter-spacing:-.04em;
  color:#fff;
}
.marca-reviews-score-out{
  font-size:.95rem;font-weight:500;color:rgba(255,255,255,.5);
}
.marca-reviews-stars{display:flex;gap:3px}
.marca-reviews-stars svg{width:18px;height:18px;fill:#fbbf24}
.marca-reviews-count{
  font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,.7);
  display:inline-flex;align-items:center;gap:8px;
}
.marca-reviews-count::before{
  content:"";display:none;width:14px;height:14px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23fff' d='M43.61 20.083H42V20H24v8h11.303a12 12 0 0 1-23.303-4 12 12 0 0 1 20.485-8.485l5.657-5.657A20 20 0 0 0 24 4a20 20 0 1 0 20 20c0-1.341-.138-2.65-.39-3.917z'/%3E%3C/svg%3E");
  background-size:contain;background-repeat:no-repeat;
}

/* Carrossel de reviews · cards brancos com scroll-snap */
.marca-reviews-carousel{
  position:relative;
}
.marca-reviews-track{
  display:flex;gap:16px;
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding:4px 0;
  margin:0 calc(-1 * var(--pad-h));
  padding-left:var(--pad-h);
  padding-right:var(--pad-h);
}
.marca-reviews-track::-webkit-scrollbar{display:none}
.marca-review-card{
  flex:0 0 calc(40% - 10px);
  scroll-snap-align:start;
  position:relative;
  padding:28px;
  border-radius:12px;
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  display:flex;flex-direction:column;gap:18px;
  transition:transform .35s ease,box-shadow .35s ease;
}
.marca-review-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 32px -12px rgba(0,0,0,.25);
}

/* Navigation arrows reviews */
.marca-reviews-nav{
  display:flex;justify-content:flex-end;gap:10px;
  margin-top:24px;
}
.marca-reviews-arrow{
  width:48px;height:48px;border-radius:50%;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  display:grid;place-items:center;
  cursor:pointer;
  transition:background .3s ease,border-color .3s ease,transform .3s ease;
}
.marca-reviews-arrow:hover{
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  border-color:transparent;
  transform:translateY(-2px);
}
.marca-reviews-arrow svg{width:18px;height:18px}
.marca-reviews-arrow:disabled{
  opacity:.35;cursor:not-allowed;
  background:rgba(255,255,255,.04);
}
.marca-reviews-arrow:disabled:hover{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.16);
  transform:none;
}
.marca-review-stars{display:flex;gap:3px}
.marca-review-stars svg{width:16px;height:16px;fill:#fbbf24}

/* Tipografia alinhada com .suporte-card-desc / .suporte-card-title / .jornada-eyebrow */
.marca-review-text{
  font-size:.95rem;line-height:1.5;
  font-weight:400;
  color:rgba(10,25,41,.64);
  margin:0;
  display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;
  overflow:hidden;
}
.marca-review-author{
  display:flex;flex-direction:column;gap:6px;
  margin-top:auto;padding-top:14px;
  border-top:1px solid rgba(0,0,0,.08);
}
.marca-review-name{
  font-size:.95rem;font-weight:600;letter-spacing:-.018em;
  line-height:1.2;
  color:#0A1929;
}
.marca-review-source{
  font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(10,25,41,.5);
}





/* Vídeo institucional · placeholder 16:9 */
.marca-video{
  position:relative;border-radius:20px;overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(135deg,rgba(20,197,197,.08) 0%,rgba(14,155,155,.05) 50%,rgba(61,218,218,.08) 100%),
    linear-gradient(180deg,#040A14 0%,#08141F 50%,#0A1929 100%);
  aspect-ratio:16/9;
  display:grid;place-items:center;
  cursor:pointer;
  transition:transform .4s ease,border-color .4s ease;
}
.marca-video::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(61,218,218,.12) 0%,transparent 70%);
}
.marca-video::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:radial-gradient(ellipse at center,#000 30%,transparent 70%);
  -webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 70%);
}
.marca-video:hover{
  transform:translateY(-3px);
  border-color:rgba(61,218,218,.25);
}

.marca-video-play{
  width:92px;height:92px;border-radius:50%;
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  display:grid;place-items:center;color:#fff;
  box-shadow:
    0 18px 48px -14px rgba(20,197,197,.7),
    inset 0 1px 0 rgba(255,255,255,.3),
    0 0 0 8px rgba(61,218,218,.08);
  transition:transform .35s ease,box-shadow .35s ease;
}
.marca-video:hover .marca-video-play{
  transform:scale(1.06);
  box-shadow:
    0 26px 60px -14px rgba(20,197,197,.85),
    inset 0 1px 0 rgba(255,255,255,.4),
    0 0 0 12px rgba(61,218,218,.12);
}
.marca-video-play svg{width:30px;height:30px;margin-left:4px}




@media(max-width:991px){
  .section-marca{padding:90px 0}
  .marca-headline{flex-direction:column;align-items:flex-start;gap:32px;margin-bottom:48px}
  .marca-headline-right{align-items:flex-start;text-align:left;max-width:none}
  .marca-video-card{flex:0 0 calc(50% - 8px);height:420px}
  
  .marca-reviews{margin-top:72px;padding-top:48px}
  .marca-reviews-headline{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:36px}
  .marca-reviews-rating{align-items:flex-start}
  .marca-review-card{flex:0 0 calc((100% - 16px) / 2)}
}
@media(max-width:700px){
  .marca-video-card{flex:0 0 calc(85% - 8px);height:380px}
  /* Play button no canto inferior direito · não cobre o rosto */
  .marca-video-play-btn{
    width:56px;height:56px;
    top:auto;left:auto;right:18px;bottom:18px;
    transform:none;
  }
  .marca-video-play-btn:hover{transform:scale(1.08)}
  .marca-video-card.playing-full .marca-video-play-btn{
    transform:scale(.7);
  }
  .marca-video-play-btn svg{width:20px;height:20px}
  /* Compensa a posição do nome pra não bater com o play */
  
  .marca-review-card{flex:0 0 calc(88% - 8px)}
}
@media(max-width:560px){
  .section-marca{padding:70px 0}
  .marca-headline{margin-bottom:36px;gap:24px}
  .marca-video-card{flex:0 0 calc(90% - 8px);height:340px}
  
  .marca-video-play-btn{width:52px;height:52px;right:16px;bottom:16px}
  .marca-video-play-btn svg{width:18px;height:18px}
  .marca-video-author{font-size:.96rem}
  .marca-carousel-arrow,.marca-reviews-arrow{width:42px;height:42px}
  .marca-carousel-arrow svg,.marca-reviews-arrow svg{width:16px;height:16px}
  .marca-reviews{margin-top:56px;padding-top:36px}
  .marca-reviews-score-num{font-size:2.8rem}
  .marca-review-card{flex:0 0 calc(92% - 8px);padding:22px}
}

/* ===================================================================
   SEÇÃO CONTATO FINAL · split layout · CTA + tiles glass
   =================================================================== */
.section-contato{
  position:relative;overflow:hidden;
  background:#000;
  padding:0;
}
.contato-grid{
  display:grid;grid-template-columns:1fr 1fr;
  min-height:100vh;
}

/* LEFT · conteúdo */
.contato-left{
  display:flex;flex-direction:column;justify-content:center;
  padding:120px 64px 100px;
  gap:32px;max-width:640px;
  margin:0 0 0 auto;width:100%;
}
.contato-badge{
  align-self:flex-start;
  display:inline-flex;align-items:center;gap:14px;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-300);
}
.contato-badge::before{
  content:"";width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-300));
}
.contato-heading{
  font-size:clamp(2.6rem,5.2vw,4.6rem);font-weight:500;
  letter-spacing:-.04em;line-height:.98;
  color:var(--white);margin:0;
}
.contato-heading .soft{color:rgba(255,255,255,.5)}
.contato-body{
  font-size:1.1rem;line-height:1.55;
  color:rgba(255,255,255,.72);max-width:48ch;margin:0;
}

/* CTA pill com text-mask */











/* Trust line */
.contato-trust{
  display:flex;align-items:center;gap:12px;
  padding-top:24px;border-top:1px solid rgba(255,255,255,.08);
  font-size:.92rem;color:rgba(255,255,255,.65);
}
.contato-trust svg{
  color:var(--magenta-300);width:18px;height:18px;flex:none;
}

/* RIGHT · formulário */
.contato-right{
  position:relative;overflow:hidden;
  background:radial-gradient(125% 95% at 80% 8%,rgba(20,197,197,.28) 0%,rgba(14,95,107,.10) 42%,transparent 72%) no-repeat;
  min-height:100vh;
  display:flex;align-items:center;justify-content:center;
  padding:80px 48px;
}
.contato-right::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(180deg,rgba(4,9,15,.65) 0%,rgba(4,9,15,.88) 100%);
}
.contato-right::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:radial-gradient(ellipse 70% 50% at 50% 100%,rgba(20,197,197,.18) 0%,transparent 65%);
}

/* Form container */
.contato-form{
  position:relative;z-index:2;
  width:100%;max-width:560px;
  padding:40px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  border-radius:2px;
  display:flex;flex-direction:column;gap:24px;
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
}
.contato-form-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:24px;
}
.contato-field{
  display:flex;flex-direction:column;gap:8px;
}
.contato-field--full{grid-column:1 / -1}
.contato-label{
  font-size:.72rem;font-weight:500;
  color:rgba(255,255,255,.6);
  letter-spacing:.06em;text-transform:uppercase;
}
.contato-input,
.contato-select,
.contato-textarea{
  width:100%;
  min-height:48px;
  padding:12px 14px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:6px;
  color:#fff;
  font-size:.95rem;
  font-family:inherit;
  box-sizing:border-box;
  transition:border-color .2s ease,background .2s ease;
}
.contato-input::placeholder,
.contato-textarea::placeholder{
  color:rgba(255,255,255,.22);
}
.contato-input:focus,
.contato-select:focus,
.contato-textarea:focus{
  outline:none;
  border-color:rgba(61,218,218,.5);
  background:rgba(255,255,255,.07);
}
.contato-textarea{
  min-height:100px;
  resize:vertical;
}
.contato-select{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,.5)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
  background-size:16px;
  padding-right:40px;
  cursor:pointer;
}
.contato-select option{
  background:#050E1A;color:#fff;
}
.contato-select:invalid{color:rgba(255,255,255,.22)}

.contato-form-submit{
  width:100%;min-height:52px;
  padding:14px 32px;
  display:flex;align-items:center;justify-content:center;gap:12px;
  background:linear-gradient(135deg,var(--magenta-500) 0%,var(--magenta-600) 100%);
  color:#fff;
  border:none;border-radius:2px;
  font-size:1rem;font-weight:600;font-family:inherit;
  cursor:pointer;
  transition:opacity .3s ease,transform .3s ease,box-shadow .3s ease;
  margin-top:8px;
  box-shadow:0 10px 28px -10px rgba(20,197,197,.55);
}
.contato-form-submit:hover{
  opacity:.94;
  transform:translateY(-1px);
  box-shadow:0 14px 32px -10px rgba(20,197,197,.7);
}
.contato-form-submit:focus-visible{
  outline:2px solid var(--magenta-300);outline-offset:3px;
}
.contato-form-submit svg{width:16px;height:16px}

@media(max-width:1100px){
  .contato-left{padding:100px 48px 80px}
}
@media(max-width:991px){
  .contato-grid{grid-template-columns:1fr;min-height:auto}
  .contato-left{padding:90px 32px 60px;margin:0 auto;max-width:680px}
  .contato-right{min-height:auto;padding:60px 32px}
}
@media(max-width:700px){
  .contato-form{padding:32px 24px}
  .contato-form-grid{grid-template-columns:1fr;gap:20px}
}
@media(max-width:560px){
  .contato-left{padding:70px 24px 50px;gap:24px}
  .contato-heading{font-size:clamp(2.2rem,8vw,2.8rem)}
  .contato-body{font-size:1rem}
  
  .contato-trust{font-size:.85rem}
  .contato-right{padding:50px 20px}
  .contato-form{padding:28px 20px;gap:20px}
}

/* ===================================================================
   SEÇÃO FAQ · accordion light · 8 perguntas + CTA dark
   =================================================================== */
.section-faq{
  position:relative;overflow:hidden;
  padding:140px 0 160px;
  background:#f6f4f1;
}
.faq-wrap{
  max-width:780px;margin:0 auto;padding:0 var(--pad-h);
}

/* Header */
.faq-header{
  text-align:center;margin-bottom:56px;
  display:flex;flex-direction:column;align-items:center;gap:32px;
}
.faq-accent-line{
  width:48px;height:1px;background:var(--magenta-500);
}
.faq-heading{
  font-size:clamp(2rem,3.6vw,3rem);font-weight:600;
  letter-spacing:-.035em;line-height:1.05;color:#0A1929;margin:0;
}

/* Accordion items */
.faq-list{display:flex;flex-direction:column;gap:8px}

.faq-item{
  background:#fff;border:1px solid rgba(10,25,41,.06);
  border-radius:4px;padding:0 24px;
  transition:border-color .3s ease,box-shadow .3s ease;
}
.faq-item[open]{
  border-color:rgba(61,218,218,.3);
  box-shadow:0 4px 16px -8px rgba(10,25,41,.1);
}

.faq-question{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:22px 0;cursor:pointer;
  font-size:1.02rem;font-weight:600;letter-spacing:-.012em;
  color:#0A1929;line-height:1.3;
  list-style:none;user-select:none;
  transition:color .3s ease;
}
.faq-question::-webkit-details-marker{display:none}
.faq-question::marker{display:none}
.faq-question:hover{color:var(--magenta-600)}

.faq-chevron{
  flex:none;width:18px;height:18px;
  color:rgba(10,25,41,.5);
  transition:transform .3s ease,color .3s ease;
}
.faq-item[open] .faq-chevron{
  transform:rotate(180deg);
  color:var(--magenta-600);
}

/* Conteúdo animado com grid trick */
.faq-answer-wrap{
  display:grid;grid-template-rows:0fr;
  transition:grid-template-rows .35s cubic-bezier(.4,0,.2,1);
}
.faq-item[open] .faq-answer-wrap{grid-template-rows:1fr}
.faq-answer{
  overflow:hidden;
  font-size:.95rem;line-height:1.6;
  color:rgba(10,25,41,.7);
}
.faq-answer p{margin:0;padding:0 0 24px}
.faq-answer p strong{color:#0A1929;font-weight:600}

/* CTA dark velvet */
.faq-cta-wrap{
  display:flex;justify-content:center;margin-top:64px;
}
.faq-cta{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  padding:16px 32px;border-radius:4px;border:0;cursor:pointer;
  background:#0A1929;color:#fff;
  font-weight:600;font-size:1rem;letter-spacing:-.005em;
  min-height:48px;text-decoration:none;
  transition:background .3s ease,transform .3s ease,box-shadow .3s ease;
  box-shadow:0 8px 24px -10px rgba(10,25,41,.5);
}
.faq-cta:hover{
  background:#0F2538;
  transform:translateY(-2px);
  box-shadow:0 14px 32px -10px rgba(10,25,41,.7);
}
.faq-cta-text{position:relative;overflow:hidden;height:22px;display:block;line-height:22px}
.faq-cta-text .stack{display:flex;flex-direction:column;transition:transform .35s cubic-bezier(.6,.05,.3,1)}
.faq-cta-text .stack span{display:block;height:22px;line-height:22px}
.faq-cta:hover .faq-cta-text .stack{transform:translateY(-22px)}
.faq-cta-arrow{position:relative;width:18px;height:18px;margin-left:12px;overflow:hidden}
.faq-cta-arrow .arrows{display:flex;flex-direction:column;transition:transform .35s cubic-bezier(.6,.05,.3,1)}
.faq-cta-arrow svg{width:18px;height:18px;flex:none}
.faq-cta:hover .faq-cta-arrow .arrows{transform:translateY(-18px)}

@media(max-width:991px){
  .section-faq{padding:90px 0 110px}
  .faq-header{margin-bottom:48px;gap:24px}
}
@media(max-width:560px){
  .section-faq{padding:70px 0 90px}
  .faq-header{margin-bottom:36px;gap:20px}
  .faq-item{padding:0 20px}
  .faq-question{padding:18px 0;font-size:.95rem}
  .faq-answer{font-size:.9rem}
  .faq-answer p{padding-bottom:20px}
  .faq-cta-wrap{margin-top:44px}
  .faq-cta{padding:14px 26px;font-size:.95rem}
}

/* ===================================================================
   FOOTER · CTA hero (image bg) + Panel cream rounded
   =================================================================== */
.section-footer{position:relative;background:#f6f4f1}

/* PART 1 · CTA HERO full-bleed image */
.footer-cta{
  position:relative;overflow:hidden;
  min-height:520px;
  background:#04090F;
  display:flex;
}

.footer-cta::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(180deg,rgba(4,9,15,.45) 0%,rgba(4,9,15,.6) 60%,rgba(4,9,15,.88) 100%);
}
.footer-cta::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background:radial-gradient(ellipse 60% 50% at 20% 50%,rgba(20,197,197,.2) 0%,transparent 60%);
}


.footer-cta-eyebrow{
  display:inline-flex;align-items:center;gap:14px;width:fit-content;
  margin-bottom:24px;
  font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;
  color:var(--magenta-300);
}
.footer-cta-eyebrow-dot{
  width:32px;height:1px;
  background:linear-gradient(90deg,var(--magenta-500),var(--magenta-300));
}











/* PART 2 · FOOTER PANEL cream rounded · overlap video */
.footer-panel{
  position:relative;z-index:2;
  background:#f6f4f1;
  border-radius:24px 24px 0 0;
  margin-top:-32px;
}
.footer-panel-wrap{
  max-width:1200px;margin:0 auto;padding:64px 48px 0;
}

/* Top grid: brand | nav */
.footer-top{
  display:grid;grid-template-columns:1fr 2fr;gap:64px;
  padding-bottom:48px;border-bottom:1px solid rgba(10,25,41,.12);
}
.footer-brand{display:flex;flex-direction:column;gap:22px;max-width:360px}
.footer-logo{
  display:inline-flex;align-items:center;gap:10px;color:#0A1929;
  text-decoration:none;
}
.footer-logo svg{width:32px;height:auto;fill:#0A1929}

.footer-desc{
  font-size:.92rem;line-height:1.6;color:rgba(10,25,41,.65);margin:0;
}

/* Nav columns */
.footer-nav{
  display:grid;grid-template-columns:repeat(3,1fr);gap:40px;
}
.footer-nav-col{display:flex;flex-direction:column;gap:14px}
.footer-nav-label{
  font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(10,25,41,.64);margin-bottom:6px;
}
.footer-nav-link{
  font-size:.92rem;color:#0A1929;text-decoration:none;
  transition:color .2s ease,padding-left .2s ease;
  display:inline-block;
}
.footer-nav-link:hover{
  color:var(--magenta-600);
  padding-left:4px;
}

/* Bottom bar */
.footer-bottom{
  padding:22px 0;border-bottom:1px solid rgba(10,25,41,.12);
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:16px;
}
.footer-copy{font-size:.78rem;color:rgba(10,25,41,.62)}
.footer-copy strong{color:#0A1929;font-weight:600}
.footer-legal{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.footer-legal a{
  font-size:.78rem;color:rgba(10,25,41,.62);text-decoration:none;
  transition:color .2s ease;
}
.footer-legal a:hover{color:#0A1929;text-decoration:underline}
.footer-legal-sep{font-size:.78rem;color:rgba(10,25,41,.35)}
.footer-copy-wrap{display:flex;flex-direction:column;gap:5px}
.footer-dev{font-size:.78rem;color:rgba(10,25,41,.64)}
.footer-dev a{color:#0A7676;text-decoration:none;font-weight:500}
.footer-dev a:hover{color:#0A1929;text-decoration:underline}

/* Last block: disclaimer + social */
.footer-last{
  padding:24px 0 36px;
  display:flex;align-items:flex-start;justify-content:space-between;
  gap:32px;flex-wrap:wrap;
}
.footer-disclaimer{
  font-size:.74rem;line-height:1.55;color:rgba(10,25,41,.64);
  max-width:680px;margin:0;
}
.footer-social{display:flex;align-items:center;gap:12px;flex-shrink:0}
.footer-social a{
  display:grid;place-items:center;
  width:36px;height:36px;border-radius:50%;
  background:rgba(10,25,41,.06);color:#0A1929;
  text-decoration:none;
  transition:background .3s ease,color .3s ease,transform .3s ease;
}
.footer-social a:hover{
  background:linear-gradient(135deg,var(--magenta-500),var(--magenta-600));
  color:#fff;
  transform:translateY(-2px);
}
.footer-social svg{width:16px;height:16px}

@media(max-width:991px){
  .footer-cta{min-height:460px}
  
  .footer-panel-wrap{padding:56px 36px 0}
  .footer-top{grid-template-columns:1fr;gap:40px;padding-bottom:40px}
  .footer-nav{gap:32px}
}
@media(max-width:767px){
  .footer-nav{grid-template-columns:1fr;gap:24px}
  .footer-nav-col{padding:18px 0;border-top:1px solid rgba(10,25,41,.1)}
  .footer-nav-col:last-child{border-bottom:1px solid rgba(10,25,41,.1)}
  .footer-nav-label{margin-bottom:10px}
}
@media(max-width:560px){
  
  
  
  .footer-panel-wrap{padding:48px 24px 0}
  .footer-last{flex-direction:column;align-items:flex-start}
  .footer-social{align-self:flex-start}
}

/* DataLP · ícones nos cards de suporte (substituem as fotos do template) */




/* DataLP · placeholder "em breve" nos cards de depoimento (vídeos ainda não enviados) */
.marca-video-card.is-soon{display:flex;align-items:center;justify-content:center}
.marca-video-soon{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:24px;background:radial-gradient(120% 100% at 50% 38%,rgba(20,197,197,.20),transparent 62%),linear-gradient(160deg,#0F2538,#050E1A);z-index:1}


.marca-video-soon strong{font-family:'Familjen Grotesk',sans-serif;font-size:14px;font-weight:700;color:#fff;letter-spacing:.02em}
.marca-video-soon small{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55)}

/* DataLP · fundo do CTA do footer (substitui o vídeo do template) */
.footer-cta{background:radial-gradient(100% 120% at 50% 0%,rgba(20,197,197,.16),transparent 55%),linear-gradient(180deg,#0A1929 0%,#050E1A 100%)}

/* DataLP · logo oficial (img) */
.brand-logo{height:38px;width:auto;display:block}
.sticky-header .brand-logo{height:30px}
.mobile-menu-header .brand-logo{height:32px}
.footer-logo-img{height:52px;width:auto;display:block}
@media(max-width:560px){.brand-logo{height:32px}}

/* DataLP · mega menu de Soluções (desktop) */
.nav{align-items:center}
.nav-item.has-mega{position:relative;display:flex;align-items:center}
.nav-mega-trigger{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.nav-mega-trigger .nav-chevron{width:13px;height:13px;transition:transform .25s ease}
.nav-item.has-mega:hover .nav-chevron,.nav-item.has-mega:focus-within .nav-chevron{transform:rotate(180deg)}
.mega{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(8px);
  background:#fff;border:1px solid rgba(5,14,26,.08);border-radius:20px;
  box-shadow:0 30px 80px -24px rgba(5,14,26,.30),0 4px 16px rgba(5,14,26,.06);
  padding:26px;display:grid;grid-template-columns:290px 1fr;grid-template-rows:auto auto;gap:22px 28px;width:min(94vw,1040px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .2s ease .3s,transform .2s ease .3s,visibility 0s linear .5s;z-index:60}
.mega::before{content:"";position:absolute;top:-16px;left:0;right:0;height:16px}
.nav-item.has-mega:hover .mega,.nav-item.has-mega:focus-within .mega{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);transition-delay:0s}
.mega-left{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.mega-label{display:inline-flex;padding:4px 12px;border-radius:100px;background:rgba(20,197,197,.10);
  border:1px solid rgba(20,197,197,.25);font-size:.68rem;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:#0E9B9B}
.mega-links{display:flex;flex-direction:column;gap:2px;width:100%}
.mega-links a{display:flex;flex-direction:column;gap:2px;padding:10px 12px;margin-left:-12px;border-radius:12px;
  transition:background .2s ease}
.mega-links a strong{font-size:.95rem;font-weight:600;color:#050E1A;letter-spacing:-.01em;
  display:flex;align-items:center;gap:8px}
.mega-links a span{font-size:.78rem;line-height:1.35;color:rgba(5,14,26,.55)}
.mega-links a:hover{background:rgba(20,197,197,.08)}
.mega-links a:hover strong{color:#0E9B9B}
.mega-links a.is-soon strong{color:rgba(5,14,26,.55)}
.mega-soon{display:inline-flex;padding:1px 8px;border-radius:100px;background:rgba(5,14,26,.06);
  font-size:.62rem;font-weight:700;font-style:normal;letter-spacing:.06em;text-transform:uppercase;
  color:rgba(5,14,26,.5)}
.mega-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.mega-photo{position:relative;display:block;height:100%;min-height:240px;border-radius:14px;overflow:hidden;isolation:isolate}
.mega-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;
  transition:transform .4s ease}
.mega-photo:hover img{transform:scale(1.06)}
.mega-photo-tint{position:absolute;inset:0;z-index:2;mix-blend-mode:multiply;opacity:.35}
.tint-1{background:linear-gradient(160deg,rgba(20,197,197,.55) 0%,rgba(5,14,26,.85) 100%)}
.tint-2{background:linear-gradient(160deg,rgba(14,95,107,.5) 0%,rgba(5,14,26,.9) 100%)}
.tint-3{background:linear-gradient(160deg,rgba(122,240,240,.45) 0%,rgba(10,25,41,.9) 100%)}
.mega-photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:45%;z-index:2;
  background:linear-gradient(180deg,transparent 0%,rgba(5,14,26,.75) 100%)}
.mega-photo-title{position:absolute;left:16px;right:16px;bottom:14px;z-index:3;
  color:#fff;font-size:1.12rem;font-weight:700;letter-spacing:-.02em;line-height:1.15}
.mega-foot{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding-top:18px;border-top:1px solid rgba(5,14,26,.08)}
.mega-all{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;color:#0E9B9B;
  transition:gap .25s ease,color .2s ease}
.mega-all:hover{gap:12px;color:#050E1A}
.mega-all svg{width:15px;height:15px;flex-shrink:0}
.mega-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  height:46px;padding:0 30px;border-radius:100px;line-height:1;
  background:linear-gradient(135deg,#3DDADA 0%,#14C5C5 100%);color:#fff;
  font-size:.88rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;
  transition:transform .2s ease,filter .2s ease}
.mega-cta:hover{transform:translateY(-1px);filter:brightness(1.08)}
.mega-cta svg{width:14px;height:14px}
.mega-all:hover svg{transform:translateX(4px)}

/* DataLP · rolagem ancorada precisa (abaixo do header fixo) */
section[id],.modelo-card[id]{scroll-margin-top:96px}

/* DataLP · HERO versão clara (vídeo removido) */
.hero>.wrap{position:relative;z-index:2}
.hero{
  min-height:auto;
  background:
    radial-gradient(52% 44% at 84% 8%,rgba(20,197,197,.30) 0%,rgba(20,197,197,.10) 45%,transparent 68%),
    radial-gradient(46% 40% at 4% 92%,rgba(61,218,218,.22) 0%,transparent 68%),
    radial-gradient(38% 36% at 96% 72%,rgba(122,240,240,.25) 0%,transparent 70%),
    radial-gradient(64% 50% at 36% 26%,rgba(20,197,197,.12) 0%,transparent 72%),
    radial-gradient(30% 26% at 58% 88%,rgba(61,218,218,.14) 0%,transparent 70%),
    #fff;
}
/* grão sutil por cima do degradê (estilo textura) */
.hero::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity:.045;
}
/* hero em 2 colunas · texto à esquerda, dashboard à direita, marquee full-width abaixo */
.hero-grid{
  grid-template-columns:1.04fr 0.96fr !important;
  grid-template-areas:"left right" "marquee marquee" "stats stats" !important;
  gap:14px 56px;
  align-items:center;
  padding-top:96px !important;
  padding-bottom:24px !important;
}
.hero-left{grid-area:left;align-self:center}
.hero .hero-stats{grid-area:stats}
/* impede que a trilha do marquee (max-content) infle a coluna */
.hero-left,.hero .hero-stats{min-width:0}
.hero-marquee-viewport{max-width:100%;width:100%}

/* dashboard (notebook) na coluna direita — sobre fundo claro */
.hero-right{
  grid-area:right;position:relative;
  width:100%;max-width:620px;margin:0;justify-self:end;align-self:center;
  aspect-ratio:auto;transform:none;
}
.hero-right::before{
  content:"";position:absolute;inset:4% -8% -10% -8%;z-index:0;
  background:radial-gradient(ellipse at 55% 48%,rgba(20,197,197,.20) 0%,transparent 68%);
  filter:blur(48px);pointer-events:none;
}
.hero-right .hero-dash-img,.hero-right img{
  position:relative;z-index:1;width:100%;height:auto;object-fit:contain;display:block;
  filter:drop-shadow(0 26px 52px rgba(5,14,26,.18));
}

/* ---- hero da home · tablet: ambientação (glow de marca + sombra de contato) ---- */
/* escopo em .hero-tablet para não afetar o hero do notebook em powerbi.html */
.hero-right.hero-tablet::before{
  inset:2% -10% -4% -10%;
  background:
    radial-gradient(ellipse at 50% 52%,rgba(20,197,197,.24) 0%,rgba(20,197,197,.09) 44%,transparent 72%);
  filter:blur(56px);
}
/* sombra projetada no "chão", acompanhando a inclinação do tablet */
.hero-right.hero-tablet::after{
  content:"";position:absolute;z-index:0;pointer-events:none;
  left:9%;right:7%;bottom:-1.5%;height:13%;
  background:radial-gradient(ellipse at 50% 50%,rgba(5,14,26,.32) 0%,rgba(5,14,26,.15) 46%,transparent 74%);
  filter:blur(20px);transform:rotate(-1.5deg);
}
/* sombra em 3 camadas: contato curta, corpo média, ambiente longa */
.hero-right.hero-tablet .hero-dash-img{
  filter:
    drop-shadow(0 2px 4px rgba(5,14,26,.22))
    drop-shadow(0 16px 28px rgba(5,14,26,.20))
    drop-shadow(0 44px 72px rgba(5,14,26,.16));
}
@media(max-width:900px){
  .hero-right.hero-tablet::after{height:11%;filter:blur(14px)}
  .hero-right.hero-tablet .hero-dash-img{
    filter:
      drop-shadow(0 2px 4px rgba(5,14,26,.20))
      drop-shadow(0 12px 22px rgba(5,14,26,.18))
      drop-shadow(0 30px 50px rgba(5,14,26,.14));
  }
}

/* marquee "Quem confia na DataLP" · faixa full-width abaixo das colunas */
.hero-marquee{grid-area:marquee;width:100%;margin:24px 0 0 !important;flex:none}

/* colapsa para 1 coluna no mobile (vence o !important do desktop) */
@media(max-width:900px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-areas:"left" "right" "marquee" "stats" !important;
    gap:26px 0;padding-top:84px !important;
  }
  .hero-right{max-width:460px;justify-self:center;margin:4px auto 0 !important;transform:none}
  .hero-marquee{margin-top:6px !important}
}
/* bloco de copy mais próximo do CTA */
.hero .tag-pill{margin-bottom:24px}
.hero h1{margin-bottom:20px;font-size:clamp(1.6rem,2.45vw,2.2rem);line-height:1.16;max-width:none;overflow-wrap:break-word;text-wrap:balance}
@media(max-width:768px){.hero h1{font-size:clamp(2rem,5.6vw,2.7rem);max-width:none}}
@media(max-width:560px){.hero h1{font-size:clamp(1.65rem,6.6vw,2.15rem)}}
.hero .hero-sub{margin-bottom:12px;font-size:clamp(1.1rem,1.4vw,1.3rem);max-width:62ch}

/* CTAs · mesma altura e baseline */
.hero .hero-cta-row{align-items:center}
.hero .btn-primary{height:64px;padding-top:0;padding-bottom:0}

/* stats · faixa horizontal em largura total */
.hero .hero-stats{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px 40px;width:100%;
  margin-top:40px;
}
/* label ao lado direito do número */
.hero .stat-item{flex-direction:row;align-items:baseline;gap:10px;min-width:0}
.hero .stat-lbl{max-width:none;line-height:1.35}
@media(max-width:700px){
  .hero .hero-stats{grid-template-columns:1fr;gap:16px}
}
@media(max-width:560px){
  .hero .hero-stats{grid-template-columns:1fr;gap:16px}
}

/* texto e nav sobre fundo claro */
.hero .nav a{color:rgba(5,14,26,.72)}
.hero .nav a:hover{color:#050E1A}
.hero .menu-toggle{color:#050E1A}
.hero .tag-pill{
  background:rgba(20,197,197,.10);
  border-color:rgba(5,14,26,.14);
  color:#050E1A;
}
.hero h1{color:#0A1929}
.hero h1 .key{color:#050E1A}
.hero-sub{color:rgba(5,14,26,.74)}
.hero-sub strong{color:#050E1A}
.hero .stat-num{color:#050E1A}
.hero .stat-lbl{color:rgba(5,14,26,.82);font-size:1rem}

/* marquee sobre fundo claro */
.hero-marquee-label{color:rgba(5,14,26,.6)}

/* DataLP · foto da equipe preenchendo o painel de resultados (mercado) */
.mercado-visual-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 28%;z-index:2}
.mercado-visual::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(5,14,26,.25) 0%,transparent 30%,transparent 55%,rgba(5,14,26,.85) 100%)}






/* ===== Language switch ===== */
.lang-switch{display:inline-flex;align-items:center;gap:2px;margin-left:8px;padding:4px;border-radius:100px;border:1px solid rgba(5,14,26,.15)}
.lang-btn{background:none;border:none;cursor:pointer;font:inherit;font-size:.78rem;font-weight:600;letter-spacing:.03em;padding:4px 10px;border-radius:100px;color:rgba(5,14,26,.55);transition:background .2s,color .2s}
.lang-btn.active{background:#050E1A;color:#fff}
.lang-btn:not(.active):hover{color:#050E1A}
.sticky-header .lang-switch,.mobile-menu-panel .lang-switch{border-color:rgba(255,255,255,.25)}
.sticky-header .lang-btn,.mobile-menu-panel .lang-btn{color:rgba(255,255,255,.6)}
.sticky-header .lang-btn.active,.mobile-menu-panel .lang-btn.active{background:#fff;color:#050E1A}
.sticky-header .lang-btn:not(.active):hover,.mobile-menu-panel .lang-btn:not(.active):hover{color:#fff}
@media(max-width:900px){.hero .lang-switch{display:none}}

/* ===================================================================
   MERCADO · versão clara (segue a hero)
   =================================================================== */
.section-mercado{background:#fff}
.section-mercado::before{content:none}
.mercado-badge{color:#0E9B9B}
.mercado-heading{color:#050E1A}
.mercado-heading .soft{color:rgba(5,14,26,.48)}
.mercado-body{color:rgba(5,14,26,.72);font-size:1.1rem;line-height:1.68}
.mercado-body strong{color:#050E1A}
.m-card{background:#fff;border-color:rgba(5,14,26,.08);
  box-shadow:0 10px 28px -14px rgba(5,14,26,.12)}
.m-card:hover{background:#fff;border-color:rgba(20,197,197,.45);transform:translateY(-3px)}
.m-card-num{color:#050E1A}
.m-card-title{color:#050E1A}
.m-card-body{color:rgba(5,14,26,.55)}
/* card 4 vira card de texto (ícone + título, sem número) */
.m-card--text{justify-content:flex-start;gap:16px}
.m-card-icon{color:#14C5C5;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:rgba(20,197,197,.10)}
.m-card-icon svg{width:24px;height:24px}
.m-card--text .m-card-title{font-size:1.05rem;font-weight:600;line-height:1.32;color:#050E1A;max-width:20ch}

/* logo wall */
.mercado-logos{margin-top:88px;
  display:flex;flex-direction:column;gap:36px}
.mercado-logos-label{display:flex;align-items:center;gap:24px;
  font-size:.74rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(5,14,26,.6);text-align:center;white-space:nowrap}
.mercado-logos-label::before,.mercado-logos-label::after{
  content:"";flex:1;height:1px;
}
.mercado-logos-label::before{background:linear-gradient(90deg,transparent 0%,rgba(20,197,197,.45) 60%,rgba(5,14,26,.15) 100%)}
.mercado-logos-label::after{background:linear-gradient(90deg,rgba(5,14,26,.15) 0%,rgba(20,197,197,.45) 40%,transparent 100%)}

.section-clientes{background:#fff;padding:64px 0 24px;border-top:1px solid rgba(5,14,26,.06)}
.section-clientes .cli-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}
.section-clientes .mercado-logos{margin-top:0}







@media(max-width:560px){
  .mercado-logos{margin-top:56px}
  /* mobile: uma logo por linha, centralizada, com divisória horizontal sutil entre elas */
  
  
  
  
  
  
  
}

/* ===================================================================
   DEMANDAS QUE RESOLVEMOS · 3ª seção (clara)
   =================================================================== */
.section-demandas{background:#fff;padding:120px 0;position:relative;border-top:1px solid rgba(5,14,26,.06)}
.demandas-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}
.demandas-head{display:flex;flex-direction:column;gap:18px;margin-bottom:52px;max-width:640px}
.demandas-heading{font-size:clamp(2rem,3.2vw,2.8rem);font-weight:500;
  letter-spacing:-.035em;line-height:1.06;color:#050E1A;margin:0}
.demandas-heading .soft{color:rgba(5,14,26,.48)}
.demandas-sub{margin:0;font-size:1.05rem;line-height:1.6;color:rgba(5,14,26,.6);max-width:62ch}
.demandas-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.d-card{display:flex;flex-direction:column;gap:12px;
  background:#FBFCFD;border:1px solid rgba(5,14,26,.07);border-radius:16px;padding:26px 24px;
  transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease,background .25s ease}
.d-card:hover{background:#fff;border-color:rgba(20,197,197,.4);transform:translateY(-3px);
  box-shadow:0 16px 36px -20px rgba(5,14,26,.20)}
.d-ic{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;
  background:rgba(20,197,197,.10);border:1px solid rgba(20,197,197,.22);color:#0E9B9B;margin-bottom:4px}
.d-ic svg{width:20px;height:20px}
.d-card h3{font-size:.98rem;font-weight:600;color:#050E1A;letter-spacing:-.01em;line-height:1.35;margin:0}
.d-card p{font-size:.84rem;line-height:1.55;color:rgba(5,14,26,.6);margin:0}
@media(max-width:1100px){.demandas-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){
  .demandas-grid{grid-template-columns:1fr}
  .section-demandas{padding:72px 0}
  .demandas-head{margin-bottom:36px}
}

/* ===================================================================
   BENEFÍCIOS · painel claro central
   =================================================================== */
.section-beneficios{background:#fff;padding:40px 0 110px}
.beneficios-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}
.beneficios-panel{background:#F6F9FB;border:1px solid rgba(5,14,26,.06);border-radius:28px;
  padding:76px 56px}
.beneficios-head{display:flex;flex-direction:column;align-items:center;gap:16px;
  text-align:center;margin-bottom:60px}
.beneficios-head .mercado-badge::before{display:none}
.beneficios-heading{font-size:clamp(1.9rem,3vw,2.6rem);font-weight:600;
  letter-spacing:-.03em;line-height:1.1;color:#050E1A;margin:0;max-width:22ch}
.beneficios-heading .soft{color:rgba(5,14,26,.48)}
.beneficios-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.b-card{position:relative;display:flex;flex-direction:column;gap:12px;
  background:#fff;border:1px solid rgba(5,14,26,.07);border-radius:16px;padding:24px;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.b-card:hover{transform:translateY(-4px);border-color:rgba(20,197,197,.45);
  box-shadow:0 18px 38px -20px rgba(5,14,26,.22)}
.b-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.b-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
  background:linear-gradient(135deg,#3DDADA 0%,#14C5C5 100%);color:#fff;
  box-shadow:0 10px 20px -10px rgba(20,197,197,.65)}
.b-ic svg{width:20px;height:20px}
.b-num{font-size:.8rem;font-weight:700;color:rgba(5,14,26,.6);letter-spacing:.08em;
  font-variant-numeric:tabular-nums}
.b-card h3{font-size:1rem;font-weight:600;color:#050E1A;letter-spacing:-.01em;line-height:1.3;margin:0}
.b-card p{font-size:.84rem;line-height:1.5;color:rgba(5,14,26,.6);margin:0}
@media(max-width:1100px){.beneficios-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){
  .beneficios-panel{padding:52px 28px;border-radius:20px}
}
@media(max-width:560px){
  .section-beneficios{padding:16px 0 72px}
  .beneficios-panel{padding:40px 18px}
  .beneficios-grid{grid-template-columns:1fr}
}

/* ===================================================================
   SOLUÇÕES · fundo navy para quebrar o ritmo claro
   =================================================================== */
.section-modelo{
  background:var(--bg-mid) radial-gradient(95% 75% at 88% 0%,rgba(20,197,197,.16) 0%,rgba(14,95,107,.06) 45%,transparent 70%) no-repeat;
  color:#fff;padding:130px 0;
}
.section-modelo::before{content:none}
.modelo-badge{color:var(--magenta-300)}
.modelo-heading{color:#fff}
.modelo-heading .soft{color:#fff}
.modelo-grid{display:grid !important;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:56px}
.sol-card{
  display:flex;flex-direction:column;gap:0;
  background:#fff;border:1px solid rgba(255,255,255,.10);border-radius:20px;
  overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease;
}
.sol-card:hover{transform:translateY(-5px);box-shadow:0 24px 48px -20px rgba(0,0,0,.55)}
.sol-media{position:relative;height:150px;width:100%;overflow:hidden}
.sol-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.sol-card:hover .sol-media img{transform:scale(1.06)}
.sol-tint{position:absolute;inset:0;mix-blend-mode:multiply;opacity:.35}
.tint-4{background:linear-gradient(160deg,rgba(61,218,218,.5) 0%,rgba(5,14,26,.88) 100%)}
.sol-body{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:0 24px 26px;flex:1}
.sol-ic{
  width:50px;height:50px;border-radius:14px;display:grid;place-items:center;
  margin-top:-25px;position:relative;z-index:2;
  background:linear-gradient(135deg,#3DDADA 0%,#14C5C5 100%);color:#fff;
  border:3px solid #fff;
  box-shadow:0 10px 22px -10px rgba(20,197,197,.7);margin-bottom:2px;
}
.sol-ic svg{width:22px;height:22px}
.sol-card h3{font-size:1.1rem;font-weight:600;color:#050E1A;letter-spacing:-.015em;margin:0}
.sol-card p{font-size:.87rem;line-height:1.55;color:rgba(5,14,26,.62);margin:0;flex:1}
.sol-link{
  display:inline-flex;align-items:center;gap:7px;margin-top:4px;
  font-size:.82rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#0A7676;
  transition:gap .25s ease,color .2s ease;
}
.sol-link:hover{gap:11px;color:#050E1A}
.sol-link svg{width:14px;height:14px;flex-shrink:0}
@media(max-width:1100px){.modelo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.section-modelo{padding:88px 0}}
@media(max-width:560px){.modelo-grid{grid-template-columns:1fr;margin-top:40px}}

/* ===================================================================
   MÉTODO DE DESENVOLVIMENTO · 3 passos + painel escuro
   =================================================================== */
.section-metodo{background:#fff;padding:120px 0}
.metodo-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}
.metodo-head{display:flex;flex-direction:column;align-items:center;gap:18px;margin-bottom:64px;max-width:640px;margin-left:auto;margin-right:auto;text-align:center}
.metodo-head .mercado-badge::before{display:none}
.metodo-heading{font-size:clamp(2rem,3.2vw,2.8rem);font-weight:500;
  letter-spacing:-.035em;line-height:1.06;color:#050E1A;margin:0}
.metodo-heading .soft{color:rgba(5,14,26,.48)}
.metodo-steps{
  display:grid;grid-template-columns:repeat(3,1fr);gap:28px;
  position:relative;max-width:1080px;margin:0 auto;
}
.metodo-steps::before{
  content:"";position:absolute;top:34px;left:11%;right:11%;height:2px;z-index:0;
  background:linear-gradient(90deg,rgba(20,197,197,.15) 0%,rgba(20,197,197,.55) 50%,rgba(20,197,197,.15) 100%);
}
.mt-step{
  position:relative;z-index:1;
  display:flex;flex-direction:column;align-items:center;gap:14px;
  text-align:center;padding:0 12px;
}
.mt-node{
  width:68px;height:68px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,#3DDADA 0%,#14C5C5 100%);
  box-shadow:0 0 0 8px #fff,0 14px 30px -12px rgba(20,197,197,.7);
  transition:transform .25s ease,box-shadow .25s ease;
}
.mt-step:hover .mt-node{
  transform:translateY(-4px) scale(1.05);
  box-shadow:0 0 0 8px #fff,0 0 0 12px rgba(20,197,197,.15),0 18px 36px -12px rgba(20,197,197,.8);
}
.mt-num{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.mt-step h3{
  font-size:1.12rem;font-weight:700;color:#050E1A;letter-spacing:-.015em;
  line-height:1.3;margin:6px 0 0;position:relative;padding-bottom:14px;
}
.mt-step h3::after{
  content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:0;
  width:32px;height:3px;border-radius:2px;
  background:linear-gradient(90deg,#3DDADA,#14C5C5);
}
.mt-step p{font-size:.92rem;line-height:1.6;color:rgba(5,14,26,.62);margin:0;max-width:30ch}
.mt-acts{list-style:none;margin:8px 0 0;padding:0;text-align:left;display:flex;flex-direction:column;gap:9px;width:100%;max-width:300px}
.mt-acts li{display:flex;align-items:flex-start;gap:9px;font-size:.87rem;line-height:1.4;color:rgba(5,14,26,.72)}
.mt-acts li::before{content:"";flex-shrink:0;margin-top:.18em;width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314C5C5' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat}
@media(max-width:900px){
  .section-metodo{padding:80px 0}
  .metodo-head{margin-bottom:44px}
  /* mobile: timeline vertical — nó absoluto à esquerda, título sobre a descrição à direita; a linha fica na coluna dos nós, sem cruzar o texto */
  .metodo-steps{grid-template-columns:1fr;gap:0;max-width:440px}
  .mt-step{display:block;position:relative;text-align:left;padding:0 0 42px 78px}
  .mt-step:last-child{padding-bottom:4px}
  .mt-node{position:absolute;left:0;top:2px;width:56px;height:56px}
  .mt-num{font-size:1.25rem}
  .mt-step h3{margin:6px 0 0;padding-bottom:12px}
  .mt-step h3::after{left:0;transform:none}
  .mt-step p{max-width:none;margin-top:8px}
  .metodo-steps::before{left:28px;right:auto;top:30px;bottom:30px;width:2px;height:auto;
    background:linear-gradient(180deg,rgba(20,197,197,.15) 0%,rgba(20,197,197,.55) 50%,rgba(20,197,197,.15) 100%)}
}

/* ===================================================================
   MODELOS DE TRABALHO · abas
   =================================================================== */
.section-modelos{background:#fff;padding:40px 0 120px}
.modelos-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}
.modelos-head{display:flex;flex-direction:column;align-items:center;gap:16px;
  text-align:center;margin-bottom:44px}
.modelos-head .mercado-badge::before{display:none}
.modelos-heading{font-size:clamp(1.9rem,3vw,2.6rem);font-weight:500;
  letter-spacing:-.03em;line-height:1.08;color:#050E1A;margin:0}
.modelos-heading .soft{color:rgba(5,14,26,.48)}
.mw-box{max-width:860px;margin:0 auto}
.mw-tabs{display:flex;gap:6px;position:relative;z-index:1}
.mw-tab{
  flex:1;padding:16px 18px;border:none;cursor:pointer;
  border-radius:14px 14px 0 0;
  background:var(--bg-mid);color:rgba(255,255,255,.75);
  font:inherit;font-size:.92rem;font-weight:600;letter-spacing:-.005em;
  transition:background .2s ease,color .2s ease;
}
.mw-tab:hover{color:#fff}
.mw-tab.active{
  background:#F6F9FB;color:#050E1A;
}
.mw-tab:focus-visible{outline:2px solid var(--magenta-500);outline-offset:-2px}
.mw-pane{
  display:none;
  background:#F6F9FB;border:1px solid rgba(5,14,26,.06);border-top:none;
  border-radius:0 0 20px 20px;
  padding:44px 48px 48px;
  text-align:center;
}
.mw-pane.active{display:block}
.mw-pane h3{
  font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:600;color:#050E1A;
  letter-spacing:-.02em;line-height:1.35;margin:0 0 14px;
}
.mw-pane p{
  font-size:.95rem;line-height:1.7;color:rgba(5,14,26,.62);
  margin:0 auto;max-width:64ch;
}
.mw-list{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.mw-list li{
  display:inline-flex;align-items:center;gap:9px;
  background:#fff;border:1px solid rgba(5,14,26,.10);border-radius:100px;
  padding:9px 18px;font-size:.88rem;font-weight:500;color:#0A1929;
  box-shadow:0 2px 8px -5px rgba(5,14,26,.12);
}
.mw-list li::before{
  content:"";flex-shrink:0;width:15px;height:15px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314C5C5' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;
}
@media(max-width:700px){
  .mw-tabs{flex-direction:column;gap:4px}
  .mw-tab{border-radius:12px}
  .mw-tab.active{border-radius:12px}
  .mw-pane{border-radius:16px;margin-top:6px;border-top:1px solid rgba(5,14,26,.06);padding:32px 22px}
  .section-modelos{padding:16px 0 80px}
}

/* ===================================================================
   MODELOS DE DASHBOARDS · mockup Power BI (dark)
   =================================================================== */
.section-dash{
  background:#F6F9FB radial-gradient(80% 60% at 50% 0%,rgba(20,197,197,.10) 0%,transparent 60%) no-repeat;
  padding:130px 0;color:#050E1A;
}
.dash-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);
  display:flex;flex-direction:column;align-items:center}
.dash-head{display:flex;flex-direction:column;align-items:center;gap:16px;
  text-align:center;margin-bottom:52px;max-width:720px}
.dash-badge{color:#0E9B9B;background:rgba(20,197,197,.10);border-color:rgba(5,14,26,.14)}
.dash-badge::before{display:none}
.dash-heading{font-size:clamp(1.9rem,3.2vw,2.7rem);font-weight:600;
  letter-spacing:-.03em;line-height:1.15;color:#050E1A;margin:0}
.dash-heading .key{color:#14C5C5}


/* portfólio · grade de dashboards reais (8 categorias) */
.dash-portfolio{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.dash-card{margin:0;display:flex;flex-direction:column;gap:12px;cursor:pointer}
.dash-card-cat{font-size:.92rem;font-weight:600;color:#0A1929;text-align:center;letter-spacing:.005em}
.dash-card-shot{
  position:relative;display:block;border-radius:14px;overflow:hidden;aspect-ratio:16/9;background:#fff;
  border:1px solid rgba(5,14,26,.10);box-shadow:0 16px 34px -20px rgba(5,14,26,.45);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.dash-card:hover .dash-card-shot,.dash-card:focus-visible .dash-card-shot{transform:translateY(-5px);box-shadow:0 26px 48px -20px rgba(5,14,26,.55);border-color:rgba(20,197,197,.45)}
.dash-card-shot img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
/* badge fixo (canto): sinaliza que abre o app externo */
.dash-card-badge{
  position:absolute;top:10px;right:10px;z-index:2;
  width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;
  background:rgba(20,197,197,.94);color:#04222A;
  box-shadow:0 4px 12px -2px rgba(5,14,26,.4);
  transition:transform .25s ease,background .25s ease;
}
.dash-card-badge svg{width:15px;height:15px}
.dash-card:hover .dash-card-badge{transform:scale(1.08)}
/* overlay no hover: véu + pílula "Abrir no Power BI" */
.dash-card-open{
  position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,rgba(5,14,26,.05),rgba(5,14,26,.42));
  opacity:0;transition:opacity .25s ease;
}
.dash-card:hover .dash-card-open,.dash-card:focus-visible .dash-card-open{opacity:1}
.dash-card-open-pill{
  display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border-radius:100px;
  background:#fff;color:#0A1929;font-size:.86rem;font-weight:600;
  box-shadow:0 10px 26px -8px rgba(5,14,26,.5);
  transform:translateY(6px);transition:transform .25s ease;
}
.dash-card:hover .dash-card-open-pill{transform:translateY(0)}
.dash-card-open-pill svg{width:15px;height:15px;color:#0E9B9B}
/* hint sob o subtítulo */
.dash-hint{
  display:inline-flex;align-items:center;gap:9px;margin-top:4px;
  font-size:.9rem;font-weight:600;color:#0E9B9B;
  background:rgba(20,197,197,.10);border:1px solid rgba(20,197,197,.22);
  padding:8px 16px;border-radius:100px;
}
.dash-hint svg{width:17px;height:17px;flex:none}
@media(max-width:920px){.dash-portfolio{grid-template-columns:repeat(2,1fr);gap:20px}}
@media(max-width:520px){.dash-portfolio{grid-template-columns:1fr;gap:18px}}
/* touch: mostra a pílula sempre (sem hover) */
@media(hover:none){.dash-card-open{opacity:1;background:linear-gradient(180deg,transparent 55%,rgba(5,14,26,.35))}.dash-card-open-pill{transform:none;padding:8px 14px;font-size:.8rem}}
.db-window{
  width:100%;max-width:980px;border-radius:18px;overflow:hidden;
  background:#0A1522;border:1px solid rgba(61,218,218,.18);
  box-shadow:0 40px 90px -30px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.03);
}
.db-bar{display:flex;align-items:center;gap:7px;padding:14px 18px;
  background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06)}
.db-dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.14)}
.db-title{margin-left:10px;font-size:.76rem;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:rgba(255,255,255,.55)}
.db-filters{margin-left:auto;display:flex;gap:8px}
.db-filters span{font-size:.68rem;font-weight:600;color:rgba(255,255,255,.5);
  padding:4px 12px;border-radius:100px;border:1px solid rgba(255,255,255,.12)}
.db-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:18px}
.db-kpi{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);
  border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.db-kpi-lbl{font-size:.64rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.45)}
.db-kpi-val{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:#fff;
  font-variant-numeric:tabular-nums}
.db-kpi-delta{font-size:.7rem;font-weight:700;color:#3DDADA}
.db-charts{display:grid;grid-template-columns:1fr 1.3fr;gap:10px;padding:0 18px 18px}
.db-panel{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);
  border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}
.db-panel-title{font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.45)}
.db-hrow{display:flex;align-items:center;gap:10px}
.db-hlbl{width:76px;font-size:.68rem;color:rgba(255,255,255,.55);flex-shrink:0;text-align:right}
.db-htrack{flex:1;height:10px;border-radius:5px;background:rgba(255,255,255,.05);overflow:hidden}
.db-hbar{display:block;height:100%;border-radius:5px;
  background:linear-gradient(90deg,#14C5C5,#3DDADA)}
.db-cols{display:flex;align-items:flex-end;gap:8px;height:150px;padding-top:6px}
.db-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}
.db-col-bar{width:100%;border-radius:4px 4px 2px 2px;
  background:linear-gradient(180deg,rgba(61,218,218,.9),rgba(20,197,197,.35))}
.db-col:last-child .db-col-bar{background:linear-gradient(180deg,#7AF0F0,#14C5C5)}
.db-col-lbl{font-size:.58rem;color:rgba(255,255,255,.4)}
.dash-cta{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  height:56px;padding:0 34px;border-radius:100px;margin-top:44px;line-height:1;
  background:linear-gradient(135deg,var(--magenta-500) 0%,var(--magenta-600) 100%);
  color:#fff;font-size:.95rem;font-weight:600;white-space:nowrap;
  box-shadow:0 0 0 1px rgba(61,218,218,.4),0 12px 32px -8px rgba(20,197,197,.6);
  transition:transform .25s ease,filter .25s ease;
}
.dash-cta:hover{transform:translateY(-2px);filter:brightness(1.08)}
.dash-cta svg{width:16px;height:16px}
@media(max-width:900px){
  .section-dash{padding:88px 0}
  .db-kpis{grid-template-columns:repeat(2,1fr)}
  .db-charts{grid-template-columns:1fr}
  .db-filters{display:none}
}
@media(max-width:560px){
  .db-cols{gap:4px}
  .db-col:nth-child(2n) .db-col-lbl{visibility:hidden}
  .dash-cta{white-space:normal;height:auto;padding:16px 26px;text-align:center}
}

/* ===================================================================
   INTEGRAÇÕES REALIZADAS · parede de wordmarks
   =================================================================== */
.section-integ{background:#fff;padding:120px 0}
.integ-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}
.integ-head{display:flex;flex-direction:column;align-items:center;gap:16px;
  text-align:center;margin-bottom:52px}
.integ-head .mercado-badge::before{display:none}
.integ-heading{font-size:clamp(1.9rem,3vw,2.6rem);font-weight:500;
  letter-spacing:-.03em;line-height:1.08;color:#050E1A;margin:0}
.integ-heading .soft{color:rgba(5,14,26,.48)}
.integ-sub{font-size:.98rem;line-height:1.6;color:rgba(5,14,26,.6);margin:0;max-width:56ch}
.integ-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;max-width:1160px;margin:0 auto}
.ig-logo{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;
  width:148px;min-height:88px;padding:15px 14px;
  background:#fff;border:1px solid rgba(5,14,26,.09);border-radius:14px;
  box-shadow:0 2px 8px -5px rgba(5,14,26,.10);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.ig-logo:hover{
  transform:translateY(-2px);border-color:rgba(20,197,197,.45);
  box-shadow:0 12px 24px -12px rgba(5,14,26,.22);
}
.ig-logo-shot{height:30px;display:flex;align-items:center;justify-content:center}
.ig-logo-shot img{max-height:30px;max-width:118px;width:auto;height:auto;object-fit:contain;display:block}
.ig-logo-name{font-size:.72rem;font-weight:600;color:rgba(5,14,26,.6);text-align:center;line-height:1.2;letter-spacing:.005em}
@media(max-width:900px){
  .section-integ{padding:80px 0}
  .integ-grid{gap:12px}
  .ig-logo{width:calc(33.333% - 8px);min-height:80px}
  .ig-logo-shot{height:26px}
  .ig-logo-shot img{max-height:26px}
}
@media(max-width:560px){
  .ig-logo{width:calc(50% - 6px);min-height:74px;padding:12px 8px}
  .ig-logo-shot{height:24px}
  .ig-logo-shot img{max-height:24px;max-width:98px}
  .ig-logo-name{font-size:.68rem}
}
/* Mural de clientes · cards um pouco maiores que os de Integrações */
.mercado-logos .integ-grid{max-width:1200px}
.mercado-logos .ig-logo{width:156px;min-height:106px}
.mercado-logos .ig-logo-shot{height:42px}
.mercado-logos .ig-logo-shot img{max-height:42px;max-width:138px}
@media(max-width:900px){
  .mercado-logos .ig-logo{width:calc(33.333% - 8px);min-height:96px}
  .mercado-logos .ig-logo-shot{height:36px}
  .mercado-logos .ig-logo-shot img{max-height:36px;max-width:120px}
}
@media(max-width:560px){
  .mercado-logos .ig-logo{width:calc(50% - 6px);min-height:86px}
  .mercado-logos .ig-logo-shot{height:32px}
  .mercado-logos .ig-logo-shot img{max-height:32px;max-width:110px}
}
/* Mural de clientes · colapsavel no mobile com "Ver mais" + fade */
.mural-grid-wrap{position:relative}
.mural-fade{display:none}
.mural-more-row{display:none}
@media(max-width:700px){
  .mercado-logos:not(.is-open) .mural-grid-wrap{max-height:400px;overflow:hidden}
  .mercado-logos:not(.is-open) .mural-fade{
    display:block;position:absolute;left:0;right:0;bottom:0;height:130px;
    background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.85) 55%,#fff 100%);
    pointer-events:none}
  .mural-more-row{display:flex;justify-content:center;margin-top:20px}
  .mural-more{display:inline-flex;align-items:center;gap:8px;
    padding:12px 24px;border:1px solid rgba(5,14,26,.14);border-radius:999px;
    background:#fff;color:#050E1A;font-family:inherit;font-size:.92rem;font-weight:600;
    cursor:pointer;box-shadow:0 6px 18px -10px rgba(5,14,26,.35);
    transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
  .mural-more:hover,.mural-more:focus-visible{border-color:rgba(20,197,197,.5);transform:translateY(-1px)}
  .mural-more-ico{width:16px;height:16px;transition:transform .25s ease}
  .mercado-logos.is-open .mural-more-ico{transform:rotate(180deg)}
}

/* ===================================================================
   CASES E APLICAÇÕES · painel navy com 3 cards
   =================================================================== */










.ca-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ca-card{
  display:flex;flex-direction:column;align-items:flex-start;gap:12px;
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);
  border-radius:16px;padding:28px 26px;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.ca-card:hover{transform:translateY(-4px);border-color:rgba(61,218,218,.4);background:rgba(255,255,255,.05)}
.ca-tag{
  display:inline-flex;padding:5px 14px;border-radius:100px;
  background:rgba(20,197,197,.12);border:1px solid rgba(61,218,218,.3);
  font-size:.7rem;font-weight:700;letter-spacing:.05em;color:var(--magenta-300);
}
.ca-card h3{font-size:1.08rem;font-weight:600;color:#fff;letter-spacing:-.015em;margin:4px 0 0}
.ca-card p{font-size:.87rem;line-height:1.6;color:rgba(255,255,255,.62);margin:0}
@media(max-width:1100px){.ca-grid{grid-template-columns:1fr}}


/* logos nas marcas dos depoimentos em vídeo */



/* ===================================================================
   PARCEIRO DE CONFIANÇA · faixa de credenciais
   =================================================================== */
.section-parceiro{
  background:#FAFCFD;padding:64px 0;
  border-top:1px solid rgba(5,14,26,.06);border-bottom:1px solid rgba(5,14,26,.06);
}
.parceiro-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);
  display:flex;flex-direction:column;align-items:center;gap:30px}
.parceiro-label{
  font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(5,14,26,.6);text-align:center;
}
.parceiro-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
.pp-pill{
  display:inline-flex;align-items:center;gap:11px;
  padding:14px 26px;border-radius:100px;
  background:#fff;border:1px solid rgba(5,14,26,.10);
  font-size:.92rem;font-weight:600;color:#050E1A;letter-spacing:-.01em;
  box-shadow:0 2px 8px -4px rgba(5,14,26,.08);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.pp-pill:hover{transform:translateY(-2px);border-color:rgba(20,197,197,.45);
  box-shadow:0 10px 24px -12px rgba(5,14,26,.2)}
.pp-ic{width:20px;height:20px;flex-shrink:0;color:#0E9B9B;display:grid;place-items:center}
.pp-ic svg{width:18px;height:18px;display:block}
.pp-pill-logo{padding:11px 24px}
.pp-logo{height:24px;width:auto;display:block}
.pp-logo.pp-logo-sgg{height:28px}
@media(max-width:900px){
  .section-parceiro{padding:48px 0}
  .pp-pill{padding:12px 20px;font-size:.84rem}
}

/* cases + aplicações unificados */
.marca-heading .soft{color:rgba(255,255,255,.55)}
.ca-grid.in-marca{margin:48px 0 80px;grid-template-columns:repeat(2,1fr);gap:24px;max-width:none}
.ca-card[href]{text-decoration:none;color:inherit}
.in-marca .ca-card{padding:34px 32px;gap:15px;min-height:352px}
.in-marca .ca-card h3{font-size:1.5rem;margin:6px 0 0}
.in-marca .ca-card p{font-size:.95rem}
.ca-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}
.ca-stats span{display:flex;flex-direction:column;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:11px 15px;min-width:92px}
.ca-stats b{font-size:1.2rem;font-weight:700;color:#fff;line-height:1;letter-spacing:-.01em}
.ca-stats i{font-style:normal;font-size:.72rem;color:rgba(255,255,255,.55);margin-top:5px}
.ca-more{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:8px;
  font-size:.92rem;font-weight:600;color:#3DDADA;transition:gap .2s ease}
.ca-more svg{width:16px;height:16px}
.ca-card:hover .ca-more{gap:12px}
@media(max-width:760px){.ca-grid.in-marca{grid-template-columns:1fr}.in-marca .ca-card{min-height:0}}


/* dados de contato no bloco de orçamento */
.contato-info{display:flex;flex-direction:column;gap:14px;margin-top:28px}
.contato-info-row{
  display:inline-flex;align-items:center;gap:12px;width:fit-content;
  font-size:.95rem;font-weight:500;color:rgba(255,255,255,.78);
  transition:color .2s ease;
}
a.contato-info-row:hover{color:#3DDADA}
.contato-info-row svg{width:18px;height:18px;flex-shrink:0;color:#3DDADA}

/* faixa escura no topo do rodapé · painel creme arredonda por cima */



.footer-panel{box-shadow:0 -24px 60px -30px rgba(0,0,0,.65)}


/* ===================================================================
   BLOG · 3 artigos acima do FAQ
   =================================================================== */
.section-blog{background:#fff;padding:120px 0}
.blog-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}
.blog-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:44px}
.blog-head-tx{display:flex;flex-direction:column;gap:16px}
.blog-heading{font-size:clamp(1.9rem,3vw,2.6rem);font-weight:500;
  letter-spacing:-.03em;line-height:1.08;color:#050E1A;margin:0}
.blog-heading .soft{color:rgba(5,14,26,.48)}
.blog-all{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;
  font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#0A7676;
  transition:gap .25s ease,color .2s ease}
.blog-all:hover{gap:12px;color:#050E1A}
.blog-all svg{width:15px;height:15px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.blog-card{display:flex;flex-direction:column;
  background:#fff;border:1px solid rgba(5,14,26,.08);border-radius:18px;overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.blog-card:hover{transform:translateY(-4px);border-color:rgba(20,197,197,.4);
  box-shadow:0 18px 40px -20px rgba(5,14,26,.2)}
.blog-media{display:block;height:180px;overflow:hidden}
.blog-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.blog-card:hover .blog-media img{transform:scale(1.05)}
.blog-body{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:22px 24px 26px;flex:1}
.blog-meta{display:flex;align-items:center;gap:12px}
.blog-tag{display:inline-flex;padding:4px 12px;border-radius:100px;
  background:rgba(20,197,197,.10);border:1px solid rgba(20,197,197,.25);
  font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#0A7676}
.blog-read{font-size:.75rem;font-weight:600;color:rgba(5,14,26,.6)}
.blog-body h3{font-size:1.05rem;font-weight:600;letter-spacing:-.015em;line-height:1.35;margin:0}
.blog-body h3 a{color:#050E1A;transition:color .2s ease}
.blog-body h3 a:hover{color:#0E9B9B}
.blog-body p{font-size:.85rem;line-height:1.55;color:rgba(5,14,26,.6);margin:0;flex:1}
.blog-link{display:inline-flex;align-items:center;gap:7px;margin-top:4px;
  font-size:.8rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#0A7676;
  transition:gap .25s ease,color .2s ease}
.blog-link:hover{gap:11px;color:#050E1A}
.blog-link svg{width:14px;height:14px}
@media(max-width:1100px){.blog-grid{grid-template-columns:1fr}.blog-media{height:200px}}
@media(max-width:900px){
  .section-blog{padding:80px 0}
  .blog-head{flex-direction:column;align-items:flex-start;gap:20px}
}

/* nav escuro nos heros claros (contato / blog / artigo) — corrige contraste */
.contato-hero .nav a,.blog-hero .nav a,.article-hero .nav a{color:rgba(5,14,26,.72)}
.contato-hero .nav a:hover,.blog-hero .nav a:hover,.article-hero .nav a:hover{color:#0A1929}

/* fix mega menu (centralizar/não cortar) nos heros claros: contato / blog / artigo */
.contato-hero,.blog-hero,.article-hero{position:relative}
.contato-hero .wrap,.blog-hero .wrap,.article-hero .wrap{position:relative}
.contato-hero .nav-item.has-mega,.blog-hero .nav-item.has-mega,.article-hero .nav-item.has-mega{position:static}

/* ====== Web Interface Guidelines — correções (2026-07) ====== */
html{color-scheme:dark}
*{-webkit-tap-highlight-color:transparent}
a,button,[role="button"],input,select,textarea,summary,label,.lang-btn,.blog-chip,.mw-tab{touch-action:manipulation}
[id]{scroll-margin-top:96px}
/* foco visível reforçado (inputs + botões customizados) */
.contato-input:focus-visible,.contato-select:focus-visible,.contato-textarea:focus-visible,
.menu-toggle:focus-visible,.sticky-menu-toggle:focus-visible,.mobile-menu-close:focus-visible,
.mobile-menu-link:focus-visible,.mobile-menu-cta:focus-visible,.lang-btn:focus-visible,
.blog-chip:focus-visible,.mw-tab:focus-visible,.marca-carousel-arrow:focus-visible,
.marca-reviews-arrow:focus-visible,.nav-mega-trigger:focus-visible,.blog-all:focus-visible,
.mega-cta:focus-visible,.mega-all:focus-visible{outline:2px solid #3DDADA;outline-offset:2px;border-radius:6px}
/* headings sem viúvas */
.hero h1,[class*="-heading"],.blog-hero h1,.article-hd h1,.contato-hero-inner h1,.ct-left-head h2,.ct-form-head h2{text-wrap:balance}
.hero-sub,.blog-hero p,.contato-hero-inner p,.article p{text-wrap:pretty}
/* scroll contido em drawer/modal (não vaza pro body) */
.mobile-menu-panel{overscroll-behavior:contain}
.marca-modal,.marca-modal-inner{overscroll-behavior:contain}
/* safe-area (notch) — mantém o padding base (14px) e só cresce em telas com notch */
.sticky-header{padding-top:max(14px,env(safe-area-inset-top))}
.mobile-menu-panel{padding-bottom:max(0px,env(safe-area-inset-bottom))}
/* skip link (acessibilidade por teclado) */
.skip-link{position:fixed;top:8px;left:8px;z-index:2000;padding:10px 18px;border-radius:8px;background:#14C5C5;color:#050E1A;font-weight:700;font-size:.9rem;text-decoration:none;transform:translateY(-160%);transition:transform .2s ease}
.skip-link:focus{transform:translateY(0);outline:2px solid #fff;outline-offset:2px}
/* status/erro do formulário (aria-live) */
.contato-status{font-size:.85rem;font-weight:600;color:#3DDADA;margin-top:-6px}
.contato-status:empty{display:none}
.contato-status.is-error{color:#ff9a9a}

/* ===== Ícones sociais · página de contato ===== */
.ct-social{margin-top:22px;display:flex;flex-direction:column;gap:12px}
.ct-social-label{font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(5,14,26,.5)}
.ct-social-links{display:flex;gap:12px}
.ct-social-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#050E1A;color:#fff;transition:transform .2s ease,background .2s ease}
.ct-social-ic:hover{transform:translateY(-2px);background:#0E9B9B}
.ct-social-ic:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(20,197,197,.5)}
.ct-social-ic svg{width:20px;height:20px}

/* ===== WhatsApp flutuante (acompanha a rolagem) ===== */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:900;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;box-shadow:0 10px 26px -6px rgba(37,211,102,.6),0 2px 8px rgba(0,0,0,.16);transition:transform .25s ease,box-shadow .25s ease}
.wa-float:hover{transform:scale(1.08);box-shadow:0 14px 32px -6px rgba(37,211,102,.7),0 2px 8px rgba(0,0,0,.2)}
.wa-float:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(37,211,102,.45)}
.wa-float svg{width:32px;height:32px}
.wa-float::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25D366;animation:waPulse 2.4s ease-out infinite;pointer-events:none}
@keyframes waPulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.65);opacity:0}}
@media(prefers-reduced-motion:reduce){.wa-float::after{display:none}}
@media(max-width:560px){.wa-float{right:16px;bottom:16px;width:52px;height:52px}.wa-float svg{width:28px;height:28px}}
@media print{.wa-float{display:none}}

/* ===================================================================
   MONITORES GRANDES — reduz o espaçamento branco lateral
   O layout base trava em --maxw:1320px; acima de ~1600px sobra muita
   margem nas laterais. Aqui o container (e a imagem do hero) crescem
   em degraus, com um leve aumento da fonte-raiz pra escalar de forma
   proporcional (o design é majoritariamente rem/clamp).
   =================================================================== */
@media(min-width:1600px){
  :root{--maxw:1480px}
  .hero-right{max-width:660px}
}
@media(min-width:1920px){
  :root{--maxw:1660px;--pad-h:64px}
  html{font-size:17px}
  .hero-right{max-width:720px}
}
@media(min-width:2400px){
  :root{--maxw:1880px;--pad-h:80px}
  html{font-size:18px}
  .hero-right{max-width:840px}
}

/* ===================================================================
   PRESENÇA NACIONAL · card com o mapa dos 16 estados (seção Sobre)
   Fundo branco (a referência do cliente era escura); textos via código.
   =================================================================== */
.presenca{margin-top:60px}
.presenca-card{
  display:grid;grid-template-columns:1.05fr 0.95fr;gap:40px;align-items:center;
  background:#fff;border:1px solid rgba(5,14,26,.08);border-radius:24px;
  padding:44px 48px;box-shadow:0 24px 60px -34px rgba(5,14,26,.35);
}
.presenca-eyebrow{
  display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:#0A7676;margin-bottom:16px;
}
.presenca-title{
  font-size:clamp(1.6rem,2.5vw,2.3rem);font-weight:600;line-height:1.12;
  letter-spacing:-.02em;color:#0A1929;margin:0 0 16px;
}
.presenca-num{color:#0E9B9B}
.presenca-sub{
  font-size:1.05rem;line-height:1.6;color:rgba(5,14,26,.66);max-width:42ch;margin:0 0 24px;
}
.presenca-legend{display:flex;flex-wrap:wrap;gap:14px 28px}
.presenca-legend-item{display:inline-flex;align-items:center;gap:9px;font-size:.9rem;color:rgba(5,14,26,.72)}
.presenca-legend .dot{width:14px;height:14px;border-radius:5px;flex:none}
.presenca-legend .dot.on{background:#14C5C5}
.presenca-legend .dot.off{background:#DFE6EC;border:1px solid rgba(5,14,26,.1)}
.presenca-map{display:flex;justify-content:center}
.presenca-map img{width:100%;max-width:400px;height:auto;display:block;filter:drop-shadow(0 18px 34px rgba(5,14,26,.12))}
@media(max-width:760px){
  .presenca-card{grid-template-columns:1fr;gap:26px;padding:32px 26px;text-align:center}
  .presenca-sub{margin-inline:auto}
  .presenca-legend{justify-content:center}
  .presenca-map img{max-width:300px;margin:0 auto}
}

/* ===================================================================
   FERRAMENTAS QUE DOMINAMOS · stack de tecnologias (home, após parceiros)
   Tiles brancos com a logo real + nome, grid centralizado.
   =================================================================== */
.section-ferramentas{background:#F6F9FB;padding:100px 0;position:relative}
.ferramentas-wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h)}
.ferramentas-head{max-width:720px;margin:0 auto 44px;text-align:center}
.ferramentas-heading{
  font-size:clamp(2rem,3.2vw,2.8rem);font-weight:500;letter-spacing:-.035em;
  line-height:1.06;color:#050E1A;margin:14px 0 16px;
}
.ferramentas-heading .soft{color:rgba(5,14,26,.54)}
.ferramentas-sub{font-size:1.05rem;line-height:1.6;color:rgba(5,14,26,.6);max-width:56ch;margin:0 auto}
.ferramentas-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
.fer-tile{
  width:158px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
  background:#fff;border:1px solid rgba(5,14,26,.08);border-radius:16px;padding:26px 14px;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.fer-tile:hover{transform:translateY(-3px);box-shadow:0 16px 34px -18px rgba(5,14,26,.28);border-color:rgba(20,197,197,.45)}
.fer-logo{height:44px;display:flex;align-items:center;justify-content:center}
.fer-logo img{max-height:44px;max-width:118px;width:auto;height:auto;object-fit:contain;display:block}
.fer-name{font-size:.82rem;font-weight:600;color:rgba(5,14,26,.64);text-align:center;line-height:1.3}
@media(max-width:640px){
  .section-ferramentas{padding:64px 0}
  .fer-tile{width:calc(50% - 8px);padding:20px 10px;gap:10px}
  .fer-logo{height:38px}
  .fer-logo img{max-height:38px}
}

/* ===== Seção "Fluxo Fino" · Dados → IA → Decisão (dados-ia) ===== */
.flow-intro{background:linear-gradient(180deg,#FAFCFD 0%,#FFFFFF 100%);padding:104px 0}
.flow-intro .fi-inner{max-width:1120px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:43% 57%;gap:64px;align-items:start}
.flow-intro .fi-lede{position:sticky;top:112px}
.flow-intro .fi-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 20px;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:#0A7676;font-weight:600}
.flow-intro .fi-eyebrow-rule{width:32px;height:1px;background:#14C5C5;display:inline-block;flex:none}
.flow-intro .fi-title{font-size:2.35rem;line-height:1.13;letter-spacing:-.01em;color:#050E1A;margin:0 0 .7em;font-weight:600}
.flow-intro .fi-title em{color:#0A7676;font-style:normal}
.flow-intro .fi-copy p{font-size:1.05rem;line-height:1.62;color:#33414d;max-width:46ch;margin:0 0 15px}
.flow-intro .fi-copy p:last-child{margin-bottom:0}
.flow-intro .fi-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:26px 0 0}
.flow-intro .fi-tags li{font-size:.8rem;color:#0A7676;border:1px solid rgba(5,14,26,.1);border-radius:999px;padding:5px 13px;font-weight:500}

.flow-intro .fi-rail{list-style:none;margin:0;padding:0;position:relative}
.flow-intro .fi-rail::before{content:"";position:absolute;left:21px;top:22px;bottom:22px;width:2px;background:linear-gradient(180deg,#14C5C5,#0A7676);opacity:.35;border-radius:2px}
.flow-intro .fi-node{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:18px;padding:0 0 30px;align-items:start}
.flow-intro .fi-node--last{padding-bottom:0}
.flow-intro .fi-icon{width:44px;height:44px;border-radius:12px;border:1px solid rgba(5,14,26,.1);background:#fff;display:grid;place-items:center;color:#0E9B9B;position:relative;z-index:1}
.flow-intro .fi-icon svg{width:21px;height:21px;display:block}
.flow-intro .fi-node--hero .fi-icon{background:rgba(20,197,197,.08);border-color:#14C5C5;color:#0A7676;box-shadow:0 0 0 4px rgba(20,197,197,.07)}
.flow-intro .fi-body{padding-top:3px;min-width:0}
.flow-intro .fi-seal{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:#0A7676;font-weight:700;margin:0 0 3px}
.flow-intro .fi-label{font-size:1.02rem;color:#0A1929;font-weight:600;margin:0}
.flow-intro .fi-node--hero .fi-label{color:#050E1A;font-size:1.12rem}
.flow-intro .fi-desc{font-size:.9rem;color:#5a6a78;line-height:1.55;margin:5px 0 0}
.flow-intro .fi-ntags{display:flex;flex-wrap:wrap;gap:6px;margin-top:3px}
.flow-intro .fi-ntags span{font-size:.76rem;line-height:1;color:#0A7676;background:#F4FAFA;border:1px solid rgba(20,197,197,.22);border-radius:999px;padding:5px 11px;font-weight:500;white-space:nowrap}
.flow-intro .fi-node--hero .fi-ntags span{background:rgba(20,197,197,.1);border-color:rgba(20,197,197,.34)}
.flow-intro .fi-ntags .is-muted{color:#8a97a2;background:#F6F8FA;border-color:rgba(5,14,26,.08)}

@media(max-width:860px){
  .flow-intro{padding:60px 0}
  .flow-intro .fi-inner{grid-template-columns:minmax(0,1fr);gap:36px;padding:0 20px}
  .flow-intro .fi-lede{position:static}
  .flow-intro .fi-title{font-size:1.75rem}
  .flow-intro .fi-copy p{font-size:1rem}
}

/* ===== Grids de serviço: colunas no desktop + empilhamento mobile (substitui inline styles que venciam as media queries) ===== */
.demandas-grid.dg-3{grid-template-columns:repeat(3,1fr)}
.demandas-grid.dg-2{grid-template-columns:repeat(2,1fr)}
@media(max-width:1100px){.demandas-grid.dg-2,.demandas-grid.dg-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.demandas-grid.dg-2,.demandas-grid.dg-3{grid-template-columns:1fr}}
.metodo-steps.ms-3{grid-template-columns:repeat(3,1fr);row-gap:40px}
.metodo-steps.ms-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.metodo-steps.ms-3,.metodo-steps.ms-4{grid-template-columns:1fr;row-gap:0}}
