/* ============================================
   CCS DataVision — Landing Page
   Identidade visual: CCS Tecno (primary #2D62A5 / secondary #34A0AD)
   ============================================ */

:root{
  --primary:#2D62A5;
  --primary-dark:#19375d;
  --primary-light:#326eb9;
  --secondary:#34A0AD;
  --secondary-dark:#2b838e;
  --accent:#34A0AD;
  --wpp:#0EC143;
  --wpp-dark:#076222;
  --dark:#111111;
  --dark-2:#1F1F1F;
  --cinza:#333333;
  --cinza6:#666666;
  --cinza-b:#ebebeb;
  --light:#EEEEEE;
  --white:#FFFFFF;
  --grad-primary:linear-gradient(135deg,#2D62A5 0%,#34A0AD 100%);
  --grad-dark:linear-gradient(135deg,#19375d 0%,#111111 100%);
  --radius-sm:5px;
  --radius-md:8px;
  --radius-lg:16px;
  --shadow-md:0 8px 30px -10px rgba(0,0,0,.15);
  --shadow-lg:0 20px 60px -20px rgba(45,98,165,.35);
  --font:'Poppins',Tahoma,Arial,Helvetica,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font);
  color:var(--dark);
  background:var(--white);
  line-height:1.6;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:var(--primary);text-decoration:none;transition:opacity .2s}
a:hover{opacity:.85}

.wrapper{
  max-width:1200px;
  margin:0 auto;
  padding:0 24px;
}

/* =================== BOTÕES =================== */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 22px;
  border-radius:var(--radius-md);
  font-weight:600;
  font-size:15px;
  cursor:pointer;
  border:none;
  transition:all .25s ease;
  text-align:center;
  line-height:1.2;
}
.btn-lg{padding:16px 32px;font-size:16px}
.btn-block{width:100%}
.btn-primary{
  background:var(--grad-primary);
  color:var(--white);
  box-shadow:0 6px 20px rgba(45,98,165,.35);
}
.btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(45,98,165,.5);
  opacity:1;
}
.btn-ghost{
  background:transparent;
  color:var(--white);
  border:2px solid rgba(255,255,255,.4);
}
.btn-ghost:hover{background:rgba(255,255,255,.12);opacity:1}
.btn-whatsapp,.btn-whatsapp-topo{
  background:var(--wpp);
  color:var(--white);
}
.btn-whatsapp:hover,.btn-whatsapp-topo:hover{
  background:var(--wpp-dark);
  opacity:1;
  transform:translateY(-2px);
}
.btn-whatsapp-topo{padding:10px 18px;font-size:14px}

/* =================== TOPO =================== */
.topo{
  position:sticky;
  top:0;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--cinza-b);
  z-index:100;
}
.topo .wrapper{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-top:12px;
  padding-bottom:12px;
  gap:24px;
}
.brand-link{
  display:flex;
  align-items:center;
  text-decoration:none;
  opacity:1;
}
.brand-link:hover{opacity:.85}
.brand-product{display:flex;flex-direction:column;line-height:1.05}
.brand-product b{
  font-size:26px;
  font-weight:800;
  background:var(--grad-primary);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  letter-spacing:-.02em;
}
.brand-product i{
  font-size:10px;
  font-style:normal;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--cinza6);
  margin-top:3px;
}
.nav-topo{display:flex;gap:28px}
.nav-topo a{
  color:var(--cinza);
  font-weight:500;
  font-size:14px;
  position:relative;
}
.nav-topo a:hover{color:var(--primary)}
.nav-topo a::after{
  content:'';
  position:absolute;
  left:0;bottom:-6px;
  width:0;height:2px;
  background:var(--primary);
  transition:width .25s ease;
}
.nav-topo a:hover::after{width:100%}

/* =================== HERO =================== */
.hero{
  background:var(--grad-dark);
  color:var(--white);
  padding:70px 0 0;
  position:relative;
  overflow:hidden;
}
.hero-grid-bg{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(127,212,220,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(127,212,220,.05) 1px,transparent 1px);
  background-size:50px 50px;
  mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%);
  pointer-events:none;
}
.hero::before{
  content:'';
  position:absolute;
  top:-200px;right:-200px;
  width:700px;height:700px;
  background:radial-gradient(circle,rgba(52,160,173,.25) 0%,transparent 65%);
  border-radius:50%;
  animation:float1 10s ease-in-out infinite;
}
.hero::after{
  content:'';
  position:absolute;
  bottom:-300px;left:-200px;
  width:800px;height:800px;
  background:radial-gradient(circle,rgba(45,98,165,.3) 0%,transparent 65%);
  border-radius:50%;
  animation:float2 14s ease-in-out infinite;
}
@keyframes float1{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,30px)}}
@keyframes float2{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,-20px)}}
.hero .wrapper{position:relative;z-index:2}
.hero-wrap{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:60px;
  align-items:center;
  padding-bottom:70px;
}
.badge-topo{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:7px 16px;
  background:rgba(52,160,173,.15);
  border:1px solid rgba(127,212,220,.4);
  border-radius:50px;
  font-size:13px;
  font-weight:500;
  color:#7fd4dc;
  margin-bottom:28px;
  letter-spacing:.02em;
}
.badge-dot{
  width:8px;height:8px;
  border-radius:50%;
  background:#0EC143;
  box-shadow:0 0 0 0 rgba(14,193,67,.6);
  animation:pulseDot 2s infinite;
}
@keyframes pulseDot{
  0%,100%{box-shadow:0 0 0 0 rgba(14,193,67,.6)}
  50%{box-shadow:0 0 0 8px rgba(14,193,67,0)}
}
.hero h1{
  font-size:clamp(34px,5.2vw,60px);
  font-weight:800;
  line-height:1.05;
  margin-bottom:24px;
  letter-spacing:-.025em;
}
.grifo{
  background:linear-gradient(135deg,#34A0AD,#7fd4dc);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.grifo-2{
  background:linear-gradient(135deg,#0EC143 0%,#7fd4dc 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.subheadline{
  font-size:clamp(15px,1.3vw,18px);
  color:rgba(255,255,255,.8);
  margin-bottom:36px;
  line-height:1.6;
}
.subheadline strong{color:var(--white);font-weight:600}
.cta-group{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:32px}
.hero-trust{
  display:flex;
  align-items:center;
  gap:14px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.1);
  font-size:13px;
  color:rgba(255,255,255,.7);
}
.trust-stars{color:#FFB800;font-size:16px;letter-spacing:2px}
.hero-trust strong{color:#fff}

/* DASH MOCKUP */
.hero-visual{position:relative;perspective:1500px}
.dashmock{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 40px 100px -20px rgba(0,0,0,.7),0 0 0 1px rgba(127,212,220,.1);
  backdrop-filter:blur(10px);
  transform:rotateY(-6deg) rotateX(4deg) scale(1.02);
  transition:transform .5s ease;
}
.dashmock:hover{transform:rotateY(0) rotateX(0) scale(1.04)}
.dashmock-top{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 16px;
  background:rgba(0,0,0,.3);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.dashmock-dots{display:flex;gap:6px}
.dashmock-dots span{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.2)}
.dashmock-dots span:nth-child(1){background:#ff5f57}
.dashmock-dots span:nth-child(2){background:#febc2e}
.dashmock-dots span:nth-child(3){background:#28c840}
.dashmock-url{
  flex:1;
  background:rgba(255,255,255,.06);
  padding:5px 12px;
  border-radius:6px;
  font-size:12px;
  font-family:ui-monospace,monospace;
  color:rgba(255,255,255,.6);
  text-align:center;
}
.dashmock-body{padding:20px}
.dash-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.dash-kpi{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  padding:12px 14px;
}
.kpi-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.5);display:block;margin-bottom:4px}
.kpi-val{display:block;font-size:20px;font-weight:700;color:#fff;line-height:1.1;margin-bottom:4px}
.kpi-up{font-size:11px;color:#0EC143;font-weight:600}
.kpi-down{font-size:11px;color:#ff6b6b;font-weight:600}
.dash-chart{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  padding:14px;
  margin-bottom:14px;
}
.chart-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:12px;color:rgba(255,255,255,.75)}
.chart-live{display:flex;align-items:center;gap:6px;font-size:11px;color:#0EC143}
.live-dot{width:7px;height:7px;border-radius:50%;background:#0EC143;animation:pulseDot 1.8s infinite}
.chart-svg{width:100%;height:auto;display:block}
.chart-legend{display:flex;gap:16px;margin-top:6px;font-size:11px;color:rgba(255,255,255,.6)}
.chart-legend i{display:inline-block;width:12px;height:3px;margin-right:5px;vertical-align:middle;border-radius:2px}
.lg-a{background:#34A0AD}
.lg-b{background:rgba(255,255,255,.4)}
.dash-connectors{
  font-size:11px;
  color:rgba(255,255,255,.5);
  padding-top:10px;
  border-top:1px dashed rgba(255,255,255,.1);
  text-align:center;
}
.dash-connectors b{color:#7fd4dc;font-weight:500}

/* BANDA DE MÉTRICAS */
.hero-metrics-band{
  background:rgba(0,0,0,.3);
  border-top:1px solid rgba(127,212,220,.15);
  padding:28px 0;
  position:relative;
  z-index:2;
}
.hero-metrics-band .wrapper{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:28px;
  align-items:center;
}
.metric-item strong{
  display:block;
  font-size:36px;
  font-weight:800;
  background:linear-gradient(135deg,#34A0AD,#7fd4dc);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  line-height:1;
  margin-bottom:6px;
}
.metric-item strong .suf{
  font-size:14px;
  color:rgba(255,255,255,.6);
  -webkit-text-fill-color:rgba(255,255,255,.6);
  font-weight:500;
  margin-left:6px;
}
.metric-item p{font-size:13px;color:rgba(255,255,255,.65);line-height:1.4;margin:0}

/* MANIFESTO */
.manifesto{
  background:linear-gradient(180deg,#f4f7fa 0%,#ffffff 100%);
  padding:70px 0;
  text-align:center;
}
.manifesto-texto{
  font-size:clamp(22px,3vw,34px);
  font-weight:300;
  line-height:1.4;
  color:var(--dark);
  max-width:900px;
  margin:0 auto 18px;
  letter-spacing:-.01em;
}
.manifesto-texto em{font-style:italic;color:var(--primary)}
.manifesto-texto strong{font-weight:700;color:var(--dark)}
.aspas{
  font-size:3em;
  color:var(--secondary);
  line-height:0;
  vertical-align:-.4em;
  opacity:.4;
}
.manifesto-sig{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--cinza6);
  font-weight:600;
}

/* CONECTORES */
.conectores{background:var(--light)}
.conectores-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:14px;
  max-width:1100px;
  margin:0 auto;
}
.conector{
  background:var(--white);
  border:1px solid var(--cinza-b);
  border-radius:12px;
  padding:20px 22px;
  transition:all .25s;
}
.conector:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 24px rgba(45,98,165,.12);
  border-color:var(--secondary);
}
.conector b{
  display:block;
  font-size:16px;
  font-weight:700;
  color:var(--dark);
  margin-bottom:6px;
}
.conector span{font-size:13px;color:var(--cinza6);line-height:1.4}
.conector-mais{
  background:linear-gradient(135deg,rgba(45,98,165,.08),rgba(52,160,173,.08));
  border:1px dashed var(--primary);
}
.conector-mais b{color:var(--primary)}

/* =================== TOUR DO PRODUTO =================== */
.produto{background:linear-gradient(180deg,#ffffff 0%,#f4f7fa 100%)}
.produto-tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:center;
  margin-bottom:40px;
}
.ptab{
  background:var(--white);
  border:1.5px solid var(--cinza-b);
  color:var(--cinza);
  padding:10px 20px;
  border-radius:50px;
  font-size:13px;
  font-weight:600;
  font-family:var(--font);
  cursor:pointer;
  transition:all .2s;
  white-space:nowrap;
}
.ptab:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-2px)}
.ptab-ativa{
  background:var(--grad-primary);
  border-color:transparent;
  color:var(--white);
  box-shadow:0 6px 20px rgba(45,98,165,.3);
}

.produto-telas{position:relative;min-height:500px}
.ptela{
  display:none;
  grid-template-columns:1.3fr 1fr;
  gap:50px;
  align-items:center;
  animation:fadeUp .4s ease;
}
.ptela-ativa{display:grid}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.ptela-img{
  background:var(--white);
  border:1px solid var(--cinza-b);
  border-radius:18px;
  padding:14px;
  box-shadow:0 30px 80px -20px rgba(45,98,165,.25),0 0 0 1px rgba(52,160,173,.1);
  position:relative;
  overflow:hidden;
}
.ptela-img::before{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 80% 20%,rgba(52,160,173,.08) 0%,transparent 50%);
  pointer-events:none;
}
.ptela-img img{
  width:100%;
  border-radius:12px;
  display:block;
}
.ptela-img-dupla{display:flex;flex-direction:column;gap:12px}
.ptela-img-dupla img{border-radius:10px}

.ptela-num{
  display:inline-block;
  font-size:14px;
  font-weight:800;
  color:var(--secondary);
  letter-spacing:.04em;
  background:rgba(52,160,173,.1);
  padding:4px 12px;
  border-radius:50px;
  margin-bottom:18px;
}
.ptela h3{
  font-size:clamp(22px,2.5vw,30px);
  font-weight:700;
  line-height:1.25;
  color:var(--dark);
  margin-bottom:16px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
.tag-ai{
  font-size:12px;
  font-weight:700;
  background:linear-gradient(135deg,#8B5CF6 0%,#EC4899 100%);
  color:#fff;
  padding:4px 12px;
  border-radius:50px;
  letter-spacing:.02em;
  vertical-align:middle;
}
.ptela p{
  color:var(--cinza6);
  font-size:15px;
  line-height:1.7;
  margin-bottom:20px;
}
.ptela p strong{color:var(--dark)}
.ptela p code{
  background:var(--light);
  padding:2px 8px;
  border-radius:4px;
  font-family:ui-monospace,monospace;
  font-size:.9em;
  color:var(--primary);
}
.ptela-bullets{list-style:none;padding:0;margin:0}
.ptela-bullets li{
  position:relative;
  padding:8px 0 8px 28px;
  font-size:15px;
  color:var(--cinza);
  line-height:1.5;
}
.ptela-bullets li::before{
  content:'';
  position:absolute;
  left:0;top:14px;
  width:16px;height:16px;
  background:var(--grad-primary);
  border-radius:50%;
  box-shadow:0 2px 6px rgba(45,98,165,.3);
}
.ptela-bullets li::after{
  content:'✓';
  position:absolute;
  left:3px;top:9px;
  color:#fff;
  font-size:11px;
  font-weight:800;
}
.ptela-bullets li strong{color:var(--dark)}

/* =================== IA DEDICADA =================== */
.ia-hero{
  background:linear-gradient(135deg,#0f0b2e 0%,#1a1446 40%,#19375d 100%);
  color:var(--white);
  position:relative;
  overflow:hidden;
}
.ia-hero::before{
  content:'';
  position:absolute;
  top:-300px;right:-200px;
  width:700px;height:700px;
  background:radial-gradient(circle,rgba(139,92,246,.25) 0%,transparent 60%);
  border-radius:50%;
}
.ia-hero::after{
  content:'';
  position:absolute;
  bottom:-300px;left:-200px;
  width:700px;height:700px;
  background:radial-gradient(circle,rgba(236,72,153,.18) 0%,transparent 60%);
  border-radius:50%;
}
.ia-hero .wrapper{position:relative;z-index:2}
.ia-hero h2,.ia-hero .lead{color:var(--white)}
.ia-hero .eyebrow{
  background:linear-gradient(135deg,#8B5CF6,#EC4899);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.ia-hero .grifo{
  background:linear-gradient(135deg,#8B5CF6 0%,#EC4899 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.ia-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:20px;
  margin-bottom:70px;
}
.ia-feat{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:28px 26px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:all .3s ease;
}
.ia-feat:hover{
  transform:translateY(-6px);
  background:rgba(255,255,255,.08);
  border-color:rgba(139,92,246,.5);
  box-shadow:0 20px 50px rgba(139,92,246,.2);
}
.ia-feat-destaque{
  background:linear-gradient(135deg,rgba(139,92,246,.15),rgba(236,72,153,.1));
  border-color:rgba(139,92,246,.3);
}
.ia-ic{
  font-size:32px;
  margin-bottom:14px;
  line-height:1;
}
.ia-feat h4{
  font-size:20px;
  font-weight:700;
  color:#fff;
  margin-bottom:10px;
}
.ia-feat p{
  font-size:14px;
  color:rgba(255,255,255,.7);
  line-height:1.6;
  margin:0;
}
.ia-feat p strong{color:#fff}

/* Providers */
.ia-providers{
  background:rgba(0,0,0,.3);
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  padding:36px 32px;
  text-align:center;
}
.ia-providers-lbl{
  font-size:18px;
  font-weight:600;
  margin-bottom:24px;
  color:rgba(255,255,255,.85);
}
.ia-providers-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:20px;
  margin-bottom:24px;
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.ia-providers-3{
  grid-template-columns:repeat(3,1fr);
  max-width:780px;
}
@media (max-width:700px){
  .ia-providers-3{grid-template-columns:1fr}
}
.ia-prov{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:24px 18px;
  transition:all .25s;
}
.ia-prov:hover{background:rgba(255,255,255,.1);transform:translateY(-3px)}
.ia-prov-logo{
  font-size:22px;
  font-weight:800;
  margin-bottom:8px;
  letter-spacing:-.02em;
  line-height:1;
}
.ia-prov-openai{background:linear-gradient(135deg,#10a37f,#26cfab);-webkit-background-clip:text;background-clip:text;color:transparent}
.ia-prov-claude{background:linear-gradient(135deg,#D97757,#F5A07B);-webkit-background-clip:text;background-clip:text;color:transparent}
.ia-prov-gemini{background:linear-gradient(135deg,#4285F4,#EA4335 40%,#FBBC04 60%,#34A853);-webkit-background-clip:text;background-clip:text;color:transparent}
.ia-prov-mais{background:linear-gradient(135deg,#8B5CF6,#EC4899);-webkit-background-clip:text;background-clip:text;color:transparent}
.ia-prov span{font-size:12px;color:rgba(255,255,255,.6);display:block}
.ia-providers-disc{
  font-size:13px;
  color:rgba(255,255,255,.6);
  max-width:640px;
  margin:0 auto;
  line-height:1.6;
}
.ia-providers-disc strong{color:#fff}

@media (max-width:900px){
  .ptela{grid-template-columns:1fr;gap:30px}
  .produto-tabs{gap:6px}
  .ptab{font-size:12px;padding:8px 14px}
}

/* RESULTADOS */
.resultados{background:var(--white)}
.res-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:24px;
  max-width:1100px;
  margin:0 auto;
}
.res-card{
  text-align:center;
  padding:40px 24px;
  background:linear-gradient(135deg,#f8f9fb 0%,#eaf2f5 100%);
  border-radius:18px;
  border:1px solid var(--cinza-b);
  transition:all .3s;
}
.res-card:hover{
  transform:translateY(-6px);
  border-color:var(--secondary);
  box-shadow:0 16px 40px rgba(52,160,173,.18);
}
.res-num strong{
  display:block;
  font-size:clamp(48px,6vw,68px);
  font-weight:800;
  background:var(--grad-primary);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  line-height:1;
  margin-bottom:12px;
  letter-spacing:-.03em;
}
.res-txt{
  font-size:14px;
  color:var(--cinza6);
  line-height:1.5;
  margin:0;
}

/* =================== PROVA SOCIAL =================== */
.prova-social{
  background:
    radial-gradient(circle at 20% 20%,rgba(45,98,165,.08) 0%,transparent 50%),
    radial-gradient(circle at 80% 80%,rgba(52,160,173,.1) 0%,transparent 50%),
    linear-gradient(180deg,#f8fafc 0%,#eaf2f5 100%);
  padding:100px 0 80px;
  border-bottom:1px solid var(--cinza-b);
  position:relative;
  overflow:hidden;
}
.ps-glow{
  position:absolute;
  top:0;left:50%;
  transform:translateX(-50%);
  width:900px;height:300px;
  background:radial-gradient(ellipse,rgba(52,160,173,.25) 0%,transparent 70%);
  pointer-events:none;
  filter:blur(40px);
}
.prova-social .wrapper{text-align:center;position:relative;z-index:2}

.ps-live{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 18px;
  background:rgba(14,193,67,.12);
  border:1px solid rgba(14,193,67,.35);
  border-radius:50px;
  font-size:13px;
  font-weight:600;
  color:#0a7a2c;
  margin-bottom:28px;
}
.live-pulse{
  width:9px;height:9px;
  border-radius:50%;
  background:#0EC143;
  box-shadow:0 0 0 0 rgba(14,193,67,.6);
  animation:pulseDot 1.8s infinite;
}
.ps-title{
  font-size:clamp(32px,5vw,54px);
  font-weight:800;
  line-height:1.1;
  letter-spacing:-.025em;
  margin-bottom:20px;
  color:var(--dark);
}
.ps-sub{
  font-size:clamp(16px,1.4vw,19px);
  color:var(--cinza6);
  max-width:720px;
  margin:0 auto 60px;
  line-height:1.6;
}
.ps-sub strong{color:var(--dark);font-weight:600}

.ps-stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  margin-bottom:60px;
  max-width:1000px;
  margin-left:auto;
  margin-right:auto;
}
.ps-stat{
  background:var(--white);
  border:1px solid var(--cinza-b);
  border-radius:var(--radius-lg);
  padding:32px 20px;
  transition:all .3s;
  box-shadow:0 6px 24px rgba(45,98,165,.08);
  position:relative;
  overflow:hidden;
}
.ps-stat::before{
  content:'';
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:var(--grad-primary);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .4s ease;
}
.ps-stat:hover{
  transform:translateY(-8px);
  border-color:var(--secondary);
  box-shadow:0 24px 50px rgba(52,160,173,.18);
}
.ps-stat:hover::before{transform:scaleX(1)}
.ps-stat strong{
  display:block;
  font-size:clamp(40px,4vw,54px);
  font-weight:800;
  line-height:1;
  background:var(--grad-primary);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  letter-spacing:-.03em;
  margin-bottom:12px;
  font-variant-numeric:tabular-nums;
}
.ps-stat span{
  font-size:14px;
  color:var(--cinza6);
  line-height:1.5;
  display:block;
}
.ps-stat-destaque{
  background:linear-gradient(135deg,#19375d 0%,#2D62A5 100%);
  border-color:transparent;
  color:#fff;
}
.ps-stat-destaque strong{
  background:linear-gradient(135deg,#34A0AD 0%,#7fd4dc 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.ps-stat-destaque span{color:rgba(255,255,255,.85)}
.ps-stat-destaque::before{background:linear-gradient(90deg,#34A0AD,#7fd4dc)}

/* Marquee */
.ps-marquee{
  overflow:hidden;
  padding:20px 0;
  background:var(--white);
  border:1px solid var(--cinza-b);
  border-radius:50px;
  max-width:1100px;
  margin:0 auto;
  box-shadow:0 6px 24px rgba(45,98,165,.08);
  mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent);
}
.ps-marquee-track{
  display:flex;
  gap:50px;
  animation:marquee 38s linear infinite;
  white-space:nowrap;
  width:max-content;
}
.ps-marquee-track span{
  font-size:15px;
  font-weight:600;
  color:var(--dark);
  letter-spacing:-.01em;
}
@keyframes marquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

@media (max-width:900px){
  .ps-stats{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:500px){
  .ps-stats{grid-template-columns:1fr}
  .ps-marquee-track{gap:30px}
  .ps-marquee-track span{font-size:13px}
}

/* =================== SEÇÕES =================== */
section{padding:90px 0}
section h2{
  font-size:clamp(28px,3.8vw,42px);
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.01em;
  margin-bottom:20px;
  color:var(--dark);
}
.lead{
  font-size:clamp(16px,1.4vw,18px);
  color:var(--cinza6);
  max-width:820px;
  margin-bottom:50px;
  line-height:1.7;
}
.titulo-bloco{margin-bottom:60px;max-width:900px}
.titulo-bloco.centralizado{text-align:center;margin-left:auto;margin-right:auto}

/* =================== GARGALO =================== */
.gargalo{background:var(--white)}
.cards-3{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:28px;
}
.card{
  background:var(--white);
  border:1px solid var(--cinza-b);
  border-radius:var(--radius-lg);
  padding:36px 28px;
  transition:all .3s ease;
}
.card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow-lg);
  border-color:var(--primary);
}
.card .icone{
  width:56px;height:56px;
  border-radius:14px;
  background:rgba(45,98,165,.1);
  color:var(--primary);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:24px;
}
.card .icone svg{width:28px;height:28px}
.card h3{
  font-size:22px;
  font-weight:700;
  margin-bottom:12px;
  color:var(--dark);
}
.card p{color:var(--cinza6);font-size:15px;line-height:1.6}

/* =================== MECANISMO (dark) =================== */
.mecanismo{
  background:var(--grad-dark);
  color:var(--white);
}
.mecanismo h2,.mecanismo .titulo-bloco p{color:var(--white)}
.mecanismo .lead{color:rgba(255,255,255,.75)}
.mecanismo .eyebrow{color:#7fd4dc}
.card-dark{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(10px);
}
.card-dark:hover{
  background:rgba(255,255,255,.08);
  border-color:var(--secondary);
  transform:translateY(-6px);
}
.card-dark h3{color:var(--white)}
.card-dark p{color:rgba(255,255,255,.75)}
.card-dark p strong{color:var(--white)}
.icone-primary{
  background:linear-gradient(135deg,rgba(52,160,173,.25),rgba(45,98,165,.25))!important;
  color:#7fd4dc!important;
}

/* =================== COMPARATIVO =================== */
.comparativo{background:var(--light)}
.tabela-comp{
  background:var(--white);
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:var(--shadow-md);
  border:1px solid var(--cinza-b);
}
.linha{
  display:grid;
  grid-template-columns:1.2fr 1.5fr 1.5fr;
  border-bottom:1px solid var(--cinza-b);
}
.linha:last-child{border-bottom:none}
.linha > div{padding:22px 24px;display:flex;align-items:center}
.linha.header > div{
  font-weight:700;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.06em;
  padding:18px 24px;
}
.linha.header .col-carac{background:var(--dark);color:var(--white)}
.linha.header .col-trad{background:#a0a0a0;color:var(--white)}
.linha.header .col-ccs{background:var(--grad-primary);color:var(--white)}
.linha:not(.header):hover{background:#fafafa}
.col-trad{color:var(--cinza6)}
.col-ccs{background:rgba(52,160,173,.06);font-weight:500;color:var(--dark)}
.check{
  display:inline-block;
  width:22px;height:22px;
  background:var(--secondary);
  color:white;
  border-radius:50%;
  font-size:13px;
  text-align:center;
  line-height:22px;
  margin-right:10px;
  font-weight:700;
  flex-shrink:0;
}

/* =================== CALCULADORA =================== */
.calc{
  background:var(--grad-dark);
  color:var(--white);
  position:relative;
  overflow:hidden;
}
.calc::before{
  content:'';
  position:absolute;
  top:-200px;right:-200px;
  width:500px;height:500px;
  background:radial-gradient(circle,rgba(52,160,173,.18) 0%,transparent 70%);
  border-radius:50%;
}
.calc::after{
  content:'';
  position:absolute;
  bottom:-200px;left:-200px;
  width:500px;height:500px;
  background:radial-gradient(circle,rgba(45,98,165,.22) 0%,transparent 70%);
  border-radius:50%;
}
.calc .wrapper{position:relative;z-index:2}
.calc h2,.calc .lead{color:var(--white)}
.calc .lead{color:rgba(255,255,255,.75)}
.calc .eyebrow{color:#7fd4dc}

.calc-box{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:40px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 30px 80px -30px rgba(0,0,0,.5);
}

/* INPUTS */
.calc-inputs{display:flex;flex-direction:column;gap:28px}
.calc-field label{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  margin-bottom:10px;
  gap:12px;
}
.calc-field label span{
  color:rgba(255,255,255,.85);
  font-size:14px;
  font-weight:500;
}
.calc-field label strong{
  font-size:22px;
  font-weight:700;
  background:linear-gradient(135deg,#34A0AD,#7fd4dc);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-variant-numeric:tabular-nums;
}
.calc-field input[type=range]{
  -webkit-appearance:none;
  appearance:none;
  width:100%;
  height:6px;
  background:rgba(255,255,255,.12);
  border-radius:50px;
  outline:none;
  cursor:pointer;
}
.calc-field input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none;
  appearance:none;
  width:22px;height:22px;
  border-radius:50%;
  background:var(--grad-primary);
  border:3px solid #fff;
  cursor:pointer;
  box-shadow:0 4px 14px rgba(52,160,173,.6);
  transition:transform .2s;
}
.calc-field input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}
.calc-field input[type=range]::-moz-range-thumb{
  width:22px;height:22px;
  border-radius:50%;
  background:#34A0AD;
  border:3px solid #fff;
  cursor:pointer;
  box-shadow:0 4px 14px rgba(52,160,173,.6);
}
.scale{
  display:flex;
  justify-content:space-between;
  margin-top:6px;
  font-size:11px;
  color:rgba(255,255,255,.4);
  letter-spacing:.04em;
}

/* RESULTADO */
.calc-result{
  background:linear-gradient(135deg,rgba(52,160,173,.08),rgba(45,98,165,.12));
  border:1px solid rgba(127,212,220,.3);
  border-radius:18px;
  padding:32px 28px;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.calc-label{
  font-size:14px;
  color:rgba(255,255,255,.75);
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.calc-valor{
  display:flex;
  align-items:baseline;
  gap:6px;
  line-height:1;
  margin-bottom:4px;
}
.calc-cifra{
  font-size:28px;
  font-weight:600;
  color:#7fd4dc;
}
#v-perda-mes{
  font-size:clamp(44px,6vw,72px);
  font-weight:800;
  background:linear-gradient(135deg,#34A0AD,#7fd4dc);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.02em;
  transition:all .3s;
}
.calc-periodo{
  font-size:16px;
  color:rgba(255,255,255,.65);
  font-weight:500;
}
.calc-subvalor{
  display:flex;
  align-items:baseline;
  gap:10px;
  padding-bottom:16px;
  border-bottom:1px dashed rgba(255,255,255,.15);
}
.calc-ano{color:rgba(255,255,255,.7);font-size:14px}
.calc-subvalor strong{
  font-size:22px;
  font-weight:700;
  color:#fff;
  font-variant-numeric:tabular-nums;
}
.calc-breakdown{display:flex;flex-direction:column;gap:12px;margin:4px 0 18px}
.calc-item{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:14px 16px;
  background:rgba(255,255,255,.04);
  border-radius:12px;
  border-left:3px solid #34A0AD;
}
.calc-item-ok{border-left-color:#0EC143;background:rgba(14,193,67,.08)}
.calc-ic{font-size:22px;flex-shrink:0;line-height:1.2}
.calc-item strong{
  font-size:16px;
  font-weight:700;
  color:#fff;
  display:block;
  margin-bottom:3px;
}
.calc-item p{
  font-size:13px;
  color:rgba(255,255,255,.7);
  margin:0;
  line-height:1.4;
}
.calc-cta{margin-top:6px}
.calc-disc{
  font-size:11px;
  color:rgba(255,255,255,.45);
  text-align:center;
  line-height:1.5;
  margin-top:10px;
}
@media(max-width:900px){
  .calc-box{grid-template-columns:1fr;padding:24px;gap:28px}
  #v-perda-mes{font-size:44px}
}

/* =================== OFERTA =================== */
.oferta{
  background:linear-gradient(135deg,#f8f9fb 0%,#eaf2f5 100%);
}
.form-lead{
  max-width:640px;
  margin:0 auto;
  background:var(--white);
  padding:40px;
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-md);
}
.linha-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:16px;
}
.form-lead input{
  width:100%;
  padding:14px 16px;
  border:2px solid var(--cinza-b);
  border-radius:var(--radius-md);
  font-size:15px;
  font-family:var(--font);
  transition:border .2s;
  margin-bottom:16px;
}
.linha-form input{margin-bottom:0}
.form-lead input:focus{
  outline:none;
  border-color:var(--primary);
}
.form-lead button{margin-top:8px}
.form-obs{
  text-align:center;
  color:var(--cinza6);
  font-size:13px;
  margin-top:16px;
}
.ou{
  text-align:center;
  margin:30px auto;
  max-width:640px;
  position:relative;
  color:var(--cinza6);
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.ou::before,.ou::after{
  content:'';
  position:absolute;
  top:50%;
  width:calc(50% - 30px);
  height:1px;
  background:var(--cinza-b);
}
.ou::before{left:0}
.ou::after{right:0}

/* =================== FAQ =================== */
.faq{background:var(--white)}
.faq .wrapper{max-width:820px}
.pergunta{
  background:var(--light);
  border-radius:var(--radius-md);
  padding:20px 28px;
  margin-bottom:14px;
  cursor:pointer;
  transition:all .25s;
  border:1px solid transparent;
}
.pergunta[open]{
  background:var(--white);
  border-color:var(--primary);
  box-shadow:var(--shadow-md);
}
.pergunta summary{
  font-weight:600;
  font-size:17px;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:var(--dark);
}
.pergunta summary::-webkit-details-marker{display:none}
.pergunta summary::after{
  content:'+';
  font-size:26px;
  color:var(--primary);
  transition:transform .25s;
  font-weight:300;
}
.pergunta[open] summary::after{transform:rotate(45deg)}
.pergunta p{
  margin-top:14px;
  color:var(--cinza6);
  font-size:15px;
  line-height:1.7;
}

/* =================== CTA FINAL =================== */
.cta-final{
  background:var(--grad-primary);
  color:var(--white);
  text-align:center;
  padding:90px 0;
  position:relative;
  overflow:hidden;
}
.cta-final::before,.cta-final::after{
  content:'';
  position:absolute;
  width:400px;height:400px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 70%);
}
.cta-final::before{top:-200px;left:-100px}
.cta-final::after{bottom:-200px;right:-100px}
.cta-final .wrapper{position:relative;z-index:2}
.cta-eyebrow{
  display:inline-block;
  padding:6px 16px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.3);
  border-radius:50px;
  color:#fff;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:700;
  margin-bottom:20px;
}
.cta-final h2{color:var(--white);margin-bottom:18px;font-size:clamp(30px,4vw,48px)}
.cta-final .grifo{
  background:linear-gradient(135deg,#FFE066,#FFB800);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.cta-lead{
  font-size:18px;
  color:rgba(255,255,255,.9);
  max-width:680px;
  margin:0 auto 40px;
  line-height:1.6;
}
.cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}
.cta-final .btn-primary{
  background:var(--white);
  color:var(--primary);
  font-weight:700;
}
.cta-final .btn-primary:hover{background:#FFE066;color:var(--primary-dark)}
.cta-final .btn-ghost{color:var(--white);border-color:rgba(255,255,255,.5)}
.cta-garantia{
  font-size:14px;
  color:rgba(255,255,255,.85);
  font-weight:500;
  letter-spacing:.02em;
}

/* =================== RODAPÉ =================== */
.rodape{
  background:var(--dark);
  color:rgba(255,255,255,.7);
  padding:60px 0 20px;
}
.rodape-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:40px;
  margin-bottom:40px;
}
.rodape .logo-rodape{height:44px;margin-bottom:16px;filter:brightness(0) invert(1)}
.rodape b{
  color:var(--white);
  display:block;
  font-size:15px;
  margin-bottom:14px;
  letter-spacing:.02em;
}
.rodape a{color:rgba(255,255,255,.7)}
.rodape a:hover{color:var(--white);opacity:1}
.rodape p{margin-bottom:8px;font-size:14px}
.copyright{
  border-top:1px solid rgba(255,255,255,.1);
  padding-top:24px;
  text-align:center;
  font-size:13px;
}

/* =================== WHATSAPP FLOAT =================== */
.wpp-float{
  position:fixed;
  bottom:28px;right:28px;
  width:62px;height:62px;
  border-radius:50%;
  background:var(--wpp);
  color:var(--white);
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 30px rgba(14,193,67,.4);
  z-index:99;
  transition:all .3s;
  animation:pulseWpp 2.4s infinite;
}
.wpp-float:hover{
  background:var(--wpp-dark);
  transform:scale(1.08);
  opacity:1;
}
@keyframes pulseWpp{
  0%,100%{box-shadow:0 10px 30px rgba(14,193,67,.4),0 0 0 0 rgba(14,193,67,.5)}
  50%{box-shadow:0 10px 30px rgba(14,193,67,.4),0 0 0 18px rgba(14,193,67,0)}
}

/* =================== RESPONSIVO =================== */
@media (max-width:1000px){
  .hero-wrap{grid-template-columns:1fr;gap:40px}
  .dashmock{transform:none}
  .hero-metrics-band .wrapper{grid-template-columns:repeat(2,1fr);gap:20px}
}
@media (max-width:900px){
  .nav-topo{display:none}
  .hero{padding:50px 0 0}
  section{padding:60px 0}
  .manifesto{padding:50px 0}
  .linha{grid-template-columns:1fr;}
  .linha > div{padding:16px 20px}
  .linha.header > div{padding:12px 20px}
  .linha:not(.header) > div{border-bottom:1px dashed var(--cinza-b)}
  .linha:not(.header) > div:last-child{border-bottom:none}
  .linha-form{grid-template-columns:1fr}
  .form-lead{padding:28px 22px}
  .wpp-float{width:54px;height:54px;bottom:20px;right:20px}
  .cta-group{flex-direction:column}
  .cta-group .btn{width:100%}
  .metric-item strong{font-size:28px}
}
@media (max-width:560px){
  .hero-metrics-band .wrapper{grid-template-columns:1fr}
  .dash-kpis{grid-template-columns:1fr}
  .res-num strong{font-size:48px}
}
@media (max-width:560px){
  .hero-metrics-band .wrapper{grid-template-columns:1fr}
  .dash-kpis{grid-template-columns:1fr}
  .res-num strong{font-size:48px}
}
@media (max-width:500px){
  .logo{height:34px}
  .logo-svg{height:36px}
  .brand-divider{display:none}
  .brand-product b{font-size:16px}
  .brand-product i{font-size:9px}
  .btn-whatsapp-topo{font-size:12px;padding:8px 12px}
  .logos-clientes{gap:30px}
  .logos-clientes img{max-height:50px}
}
