
:root{
  --bg:#0a0c10;
  --border:#1b2330;
  --muted:#a9b3c7;
  --text:#e9eef7;
  --primary:#7c3aed;
  --secondary:#22d3ee;
  --accent:#00ff94;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(1000px 600px at 10% -10%, #1a1035 0%, transparent 50%),
    radial-gradient(800px 500px at 90% 10%, #0b3a46 0%, transparent 45%),
    linear-gradient(180deg, #0b0d10 0%, #0a0c0f 100%);
  background-attachment: fixed;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.container{max-width:1800px;margin:0 auto;padding:0 32px}


h1{font-size:clamp(40px, 8vw, 80px);line-height:1.05;margin:16px 0 20px}
h2{font-size:clamp(32px, 6vw, 64px);line-height:1.1;margin:0 0 20px}
h3{font-size:clamp(24px, 5vw, 36px);line-height:1.15;margin:0 0 16px}
p,li,small{font-size:clamp(16px, 3vw, 20px);line-height:1.6}
.lead{color:#cfe0ff;max-width:75ch;font-size:clamp(18px, 3.5vw, 24px);line-height:1.7}
.grad{background:linear-gradient(90deg,var(--primary),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}


.site-header{
  position:sticky;top:0;z-index:60;
  background:rgba(11,13,16,0.95);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(10px);
  padding:0;
}
.header-wrap{
  display:flex;align-items:center;justify-content:space-between;
  height:140px;max-width:1600px;margin:0 auto;padding:0 40px;
}
.brand{
  display:flex;align-items:center;
  text-decoration:none;color:inherit;
  transition:opacity 0.2s ease;
}
.brand:hover{opacity:0.9}
.brand-txt{display:none}
.logo{
  height:120px;width:auto;object-fit:contain;
  filter:drop-shadow(0 6px 16px rgba(0,0,0,0.7));
  transition: transform 0.3s ease;
}
.brand:hover .logo{transform: scale(1.08)}
.nav{display:flex;gap:10px;align-items:center}
.nav a{color:var(--muted);text-decoration:none;padding:8px 10px;border-radius:10px}
.nav a:hover{color:var(--text);background:#141a22}
.nav-toggle{display:none}
.burger{display:none;cursor:pointer}
.burger span{display:block;width:22px;height:2px;background:#cfe7ff;margin:5px 0;border-radius:2px}


/* Mobile styles moved to mobile.css */


.card{
  padding:60px;background:rgba(15,19,24,0.8);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:32px;box-shadow:0 16px 60px rgba(0,0,0,0.4);
  transition:transform 0.3s ease, box-shadow 0.3s ease;
}
.card:hover{
  transform:translateY(-6px);
  box-shadow:0 24px 80px rgba(0,0,0,0.5);
}
.btn{
  display:inline-block;padding:20px 32px;border-radius:20px;
  text-decoration:none;font-weight:700;font-size:18px;
  transition:all 0.3s ease;
}
.btn--primary{
  background:linear-gradient(135deg,var(--primary),var(--secondary));
  color:#fff;box-shadow:0 16px 40px rgba(124,58,237,0.5);
}
.btn--primary:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 50px rgba(124,58,237,0.6);
}
.btn--ghost{
  border:2px solid rgba(124,58,237,0.3);
  color:var(--text);background:rgba(11,15,20,0.8);
}
.btn--ghost:hover{
  background:rgba(124,58,237,0.1);
  border-color:var(--primary);
}
.btn--inline{color:#cfe7ff;text-decoration:none;border-bottom:1px dashed #29415a}


.hero{padding:100px 0}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:center}
.flag{display:inline-block;padding:12px 20px;border:1px solid var(--border);border-radius:999px;color:#bcd1f3;background:#0c131c;font-size:16px;font-weight:600}
.cta{display:flex;gap:20px;margin-top:24px;flex-wrap:wrap}
.social-proof{margin-top:16px;color:#bcd1f3;font-size:18px;font-weight:500}
.hero-viz{position:relative;min-height:320px}
.hero-graph{background:#0b0f14;border:1px solid var(--border);border-radius:16px;padding:8px}
.kpis{position:absolute;top:16px;left:16px;display:flex;gap:12px;flex-wrap:wrap}
.kpi{background:#0b0f14cc;border:1px solid var(--border);padding:12px 16px;border-radius:16px}
.kpi-label{display:block;color:#8aa0bd;font-size:14px;font-weight:500}
.kpi-value{font-weight:800;font-size:20px}
.badges{position:absolute;bottom:16px;left:16px;display:flex;gap:10px;flex-wrap:wrap}
.badge{padding:10px 16px;border-radius:999px;border:1px solid #223047;color:#cfe7ff;font-size:14px;font-weight:500}

.glass{background:#0f1318aa;border:1px solid var(--border);border-radius:20px;box-shadow:0 8px 25px #00000050}

/* Layout mais bonito */
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.hero{padding:80px 0 160px 0;background:linear-gradient(135deg, rgba(11,13,16,0.8), rgba(11,13,16,0.95))}
.section{padding:100px 0}
.section-dark{background:linear-gradient(180deg, #0c1015, #0a0c0f);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.section-highlight{background:linear-gradient(180deg,rgba(124,58,237,0.12),rgba(34,211,238,0.08));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.card{padding:32px}

.features .feature{padding:24px;border:1px dashed #203048;border-radius:20px;background:#0b0f1411;margin-bottom:20px}
.features .feature h3{font-size:22px;margin-bottom:12px}
.features .feature p{font-size:16px;line-height:1.6}
.charts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
canvas{background:#0b0f14;border:1px solid var(--border);border-radius:20px;padding:16px;max-width:100%}


.gerente-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center}
.gerente-card{padding:24px;background:#0b0f14;border:1px solid var(--border);border-radius:20px}


.cta-final{padding:32px;text-align:center;background:linear-gradient(135deg,rgba(124,58,237,0.1),rgba(34,211,238,0.05));border-radius:24px;border:1px solid rgba(124,58,237,0.2)}


.contact{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:24px}
.contact input,.contact textarea{background:#0b0f14;border:1px solid var(--border);border-radius:16px;color:#eaf1ff;padding:16px;font-size:16px}
.contact button{justify-self:center;padding:16px 32px;font-size:16px}


.accordion{display:grid;gap:12px}
.acc{border:1px solid var(--border);border-radius:20px;overflow:hidden;background:#0b0f14}
.acc-btn{
  width:100%;text-align:left;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:transparent;border:none;color:var(--text);padding:20px 24px;font-size:18px;font-weight:700;
}
.acc-btn i{opacity:.9}
.acc-btn:hover{background:#0f141c}
.acc-panel{max-height:0;overflow:hidden;transition:max-height .25s ease,padding .25s ease;background:#0b0f14;padding:0 24px;color:#cfe7ff;font-size:16px;line-height:1.6}
.acc.open .acc-btn{background:linear-gradient(90deg,rgba(124,58,237,.15),rgba(34,211,238,.15))}
.acc.open .acc-panel{padding:20px 24px}


.site-footer{border-top:1px solid var(--border);background:#0b0d10;padding:80px 0}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:start;padding:0}
.foot-brand{display:flex;align-items:center;justify-content:center}
.logo-sm{
  height:90px;width:auto;object-fit:contain;
  filter: drop-shadow(0 4px 12px rgba(0,0,0,0.5));
  transition: transform 0.3s ease;
}
.foot-brand:hover .logo-sm{transform: scale(1.1)}
.links{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.links a{color:#9fb2cc;text-decoration:none;padding:6px 0;font-size:16px;transition:color 0.2s ease;font-weight:500}
.links a:hover{color:#eaf1ff}
.copy{color:#9fb2cc;text-align:center;grid-column:1/-1;margin-top:24px;padding-top:24px;border-top:1px solid var(--border);font-size:16px}


#sale-toasts{position:fixed;left:20px;bottom:20px;display:flex;flex-direction:column;gap:12px;z-index:9999}
.toast{display:flex;align-items:center;gap:12px;background:#07131aee;border:1px solid #16303f;border-radius:20px;padding:16px 20px;box-shadow:0 12px 40px #0008;animation:slideIn .4s ease}
.toast .ava{width:36px;height:36px;border-radius:999px;background:#0b1f2c;display:grid;place-items:center;font-size:16px;font-weight:600}
.toast .txt{font-size:15px;color:#cfe7ff;font-weight:500}
@keyframes slideIn{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}


/* Tablet e mobile styles moved to mobile.css */



.op-wrapper{padding:24px}
.op-head{text-align:center;margin-bottom:24px}
.op-seq{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.op-card{
  background:#0b0f14;
  border:1px solid var(--border);
  border-radius:20px;
  padding:20px;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.op-card:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 30px #0008;
  border-color:#2a3d57;
}
.op-ico{font-size:22px;margin-bottom:6px}
/* Operação mobile styles moved to mobile.css */



@media (min-width: 1200px){
  .hero-grid{grid-template-columns:1fr 1fr;gap:40px}
}


.tech-visual{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;align-items:center;padding:16px}
.tech-illustration svg{width:100%;height:auto;display:block}
.live-sales h3{margin:0 0 8px}
.live-sales ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-height:180px;overflow:auto}
.live-item{display:flex;align-items:center;gap:10px;background:#0b0f14;border:1px solid var(--border);border-radius:14px;padding:10px}
.live-item .dot{width:10px;height:10px;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--secondary))}
.live-item .txt{color:#e9eef7;font-size:14px}



.tech-visual{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:center;padding:18px}
.tech-side{display:grid;gap:14px}
.kpi-stack{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.kmini{background:#0b0f14;border:1px solid var(--border);border-radius:16px;padding:12px;text-align:center}
.kmini .lbl{display:block;color:#9fb2cc;font-size:12px}
.kmini .val{display:block;font-weight:800;font-size:18px}


/* Tecnologia mobile styles moved to mobile.css */



.kpi-two{grid-template-columns:repeat(2,1fr)}
.sale-pop{
  position:absolute;bottom:-12px;left:12px;
  display:flex;align-items:center;gap:10px;
  background:#07131aee;border:1px solid #16303f;border-radius:16px;
  padding:10px 12px;box-shadow:0 10px 30px #0008;
  animation:slideIn .4s ease;
}
.sale-pop .dot{width:10px;height:10px;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--secondary))}
.sale-pop .txt{font-size:14px;color:#e9eef7}
.tech-illustration{position:relative}



.tech-controls{
  display:flex;gap:10px;flex-wrap:wrap;align-items:center;
  margin:0 0 8px;opacity:.9
}
.tech-controls label{display:flex;gap:6px;align-items:center;font-size:14px;color:#cfe7ff}
.btn-sm{padding:8px 12px;border-radius:12px;font-size:14px}


.tech-illustration svg .p{animation:float 6s ease-in-out infinite;opacity:.85}
.tech-illustration svg .p2{animation-delay:1s}
.tech-illustration svg .p3{animation-delay:2s}
.tech-illustration svg .p4{animation-delay:3s}
@keyframes float{
  0%{ transform:translateY(0) translateX(0); opacity:.85 }
  50%{ transform:translateY(-8px) translateX(4px); opacity:1 }
  100%{ transform:translateY(0) translateX(0); opacity:.85 }
}


.sale-pop.right{left:auto;right:12px}



#bg-particles{
  position:fixed;inset:0;pointer-events:none;z-index:0;
  background:transparent;
}
.particle{
  position:absolute;bottom:-40px;
  font-size:14px;color:#a78bfa;
  animation:rise linear forwards;
}
@keyframes rise{
  to{ transform:translateY(-110vh) translateX(var(--dx, 0)); opacity:0; }
}



@media (min-width: 1280px){
  h1{font-size:60px}
  h2{font-size:40px}
  .hero-grid{grid-template-columns:1.1fr .9fr;gap:40px}
  .tech-visual{padding:22px}
  .op-wrapper{padding:22px}
  .section{padding:72px 0}
}


@media (min-width: 1024px){
  .site-header::after{
    content:"";position:absolute;inset:auto 0 -8px 0;height:8px;
    background:linear-gradient(90deg,rgba(124,58,237,.25),rgba(34,211,238,.25));
    filter:blur(8px);opacity:.5;pointer-events:none;
  }
}



.tech-illustration .scene{position:relative;min-height:260px;display:flex;align-items:flex-end;gap:10px}
.char3d{height:200px;width:auto;border-radius:16px;box-shadow:0 12px 30px #0006;object-fit:contain;transform:translateY(8px)}
.monitor{width:260px;height:auto}
.tech-illustration .sale-pop{position:absolute;bottom:4px;left:280px}
/* Robot 3D mobile styles moved to mobile.css */



.tech-illustration .scene::before{
  content:"";position:absolute;left:0;bottom:0;transform:translate(10px, 30px);
  width:220px;height:140px;border-radius:50%;
  background: radial-gradient(60% 60% at 50% 50%, rgba(124,58,237,.25), rgba(34,211,238,.12) 60%, transparent 70%);
  filter: blur(28px);
  pointer-events:none;
}




svg .eye{
  transform-box: fill-box;
  transform-origin: 50% 50%;
  animation: blink 4.5s infinite;
}
svg .eye:nth-of-type(2){ animation-delay: 0.2s; }

@keyframes blink{
  0%, 3%  { transform: scaleY(1); }
  1.5%    { transform: scaleY(0.15); }
  100%    { transform: scaleY(1); }
}


svg .arm{
  transform-box: fill-box;
  transform-origin: left center;
}
svg .arm-right{
  animation: wave 2.8s ease-in-out infinite;
}

@keyframes wave{
  0%,100% { transform: rotate(0deg); }
  20%     { transform: rotate(-18deg); }
  40%     { transform: rotate(6deg); }
  60%     { transform: rotate(-10deg); }
  80%     { transform: rotate(3deg); }
}



body{
  background-color:#0b0b0f;
  color:#f9f9fb;
}
h1,h2,h3,h4,h5,h6{
  color:#ffffff;
}
.btn--primary{
  background:#7c3aed;
  color:#fff;
}
.btn--ghost{
  border:1px solid #7c3aed;
  color:#7c3aed;
}
.section{
  background:transparent;
}
header, footer{
  background:#0d0d12;
}

.particle{
  font-size:16px;
  color:#a78bfa !important;
  opacity:0.9;
}


@media (min-width: 1024px){
  body{
    background: radial-gradient(circle at top left, #1a0b2e 0%, #0b0b0f 70%);
  }
}

.brand-txt strong{font-size:20px;font-weight:900}



.robot-animated{
  filter: drop-shadow(0 0 12px rgba(139,92,246,.55)) drop-shadow(0 0 24px rgba(139,92,246,.35));
  animation: robotFloat 6s ease-in-out infinite, robotTilt 10s ease-in-out infinite;
  border-radius:20px;max-width:420px;width:100%;
}
@keyframes robotFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes robotTilt{0%,100%{transform:rotate(0)}50%{transform:rotate(-1.6deg)}}

.tech-illustration img{max-width:420px;width:100%;height:auto;display:block;margin:0 auto;border-radius:20px}




.tech-illustration img{max-width:483px;width:100%;height:auto;display:block;margin:0 auto;border-radius:22px}
.robot-animated{
  animation: robotFadeZoom 900ms ease-out both, robotFloat 6s ease-in-out infinite 900ms, robotTilt 10s ease-in-out infinite 900ms, glowPulse 3.2s ease-in-out infinite 900ms;
  filter: drop-shadow(0 0 14px rgba(139,92,246,.55)) drop-shadow(0 0 28px rgba(139,92,246,.35));
}
@keyframes robotFadeZoom{0%{opacity:0; transform:scale(.96)} 100%{opacity:1; transform:scale(1)}}
@keyframes robotFloat{0%,100%{transform: translateY(0)}50%{transform: translateY(-8px)}}
@keyframes robotTilt{0%,100%{transform: rotate(0)}50%{transform: rotate(-1.2deg)}}
@keyframes glowPulse{
  0%,100%{filter: drop-shadow(0 0 10px rgba(139,92,246,.45)) drop-shadow(0 0 24px rgba(139,92,246,.25));}
  50%{filter: drop-shadow(0 0 18px rgba(139,92,246,.75)) drop-shadow(0 0 36px rgba(139,92,246,.45));}
}





/* ===== Layout polish (desktop + mobile) ===== */
.container{ max-width: 1240px; padding: 0 18px; margin: 0 auto; }
.grid-3.features{ gap: 18px; }
.grid-3.features .feature{ border-radius: 16px; }

/* Robot section side-by-side alignment on desktop */
@media (min-width: 1024px){
  .tech-visual{ display: grid; grid-template-columns: 1.1fr 0.9fr; align-items: center; gap: 24px; }
  .tech-illustration{ padding: 6px 0; }
}

/* Features mobile styles moved to mobile.css */

/* Robot PNG glow refined */
.tech-illustration img.robot-animated{
  max-width: 480px; width: 100%; height: auto; display:block; margin: 0 auto;
  border-radius: 22px;
  filter: drop-shadow(0 0 14px rgba(139,92,246,.55)) drop-shadow(0 0 28px rgba(139,92,246,.35));
  animation: robotFadeZoom 900ms ease-out both, robotFloat 6s ease-in-out infinite 900ms, robotTilt 10s ease-in-out infinite 900ms, glowPulse 3.2s ease-in-out infinite 900ms;
}
@keyframes robotFadeZoom{0%{opacity:0; transform:scale(.96)}100%{opacity:1; transform:scale(1)}}
@keyframes robotFloat{0%,100%{transform: translateY(0)}50%{transform: translateY(-8px)}}
@keyframes robotTilt{0%,100%{transform: rotate(0)}50%{transform: rotate(-1.2deg)}}
@keyframes glowPulse{
  0%,100%{filter: drop-shadow(0 0 10px rgba(139,92,246,.45)) drop-shadow(0 0 24px rgba(139,92,246,.25));}
  50%{filter: drop-shadow(0 0 18px rgba(139,92,246,.75)) drop-shadow(0 0 36px rgba(139,92,246,.45));}
}


/* ===== Contact Section (Professional) ===== */
.section-contact{padding:72px 0}
.contact-wrap{
  display:grid; gap:28px; align-items:stretch;
  grid-template-columns: 1.05fr 0.95fr;
  background: radial-gradient(140% 120% at 0% 0%, rgba(139,92,246,.10) 0%, rgba(0,0,0,0) 50%) , rgba(16,18,28,.55);
  border:1px solid rgba(255,255,255,.06);
  box-shadow: 0 10px 40px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.04);
  border-radius: 20px; padding: 28px;
  backdrop-filter: blur(8px);
}
.contact-copy h2{font-size:32px; line-height:1.15; margin:0 0 8px}
.contact-copy p{opacity:.9; margin:0 0 14px}
.contact-points{display:grid; grid-template-columns:repeat(3,auto); gap:10px; font-size:14px; opacity:.9}
.contact-points li{list-style:none}
.contact-form{display:block}
.contact-form .row{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:12px}
.field{display:flex; flex-direction:column; gap:6px}
.field-full{grid-column:1/-1}
.field label{font-size:12px; opacity:.85}
.field input,.field textarea{
  background:#0f1320; color:#f7f7fb; border:1px solid rgba(255,255,255,.08);
  border-radius:12px; padding:12px 14px; outline:none;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.02);
}
.field input:focus,.field textarea:focus{border-color:#8b5cf6; box-shadow: 0 0 0 3px rgba(139,92,246,.25)}
.btn-contact{
  display:inline-block; border:none; border-radius:12px; padding:12px 18px; margin-top:8px;
  background: linear-gradient(90deg,#8b5cf6,#7c3aed); color:#fff; font-weight:700;
  box-shadow: 0 10px 24px rgba(139,92,246,.35);
  cursor:pointer; transition: transform .12s ease, filter .2s ease;
}
.btn-contact:hover{ transform: translateY(-1px); filter: brightness(1.04) }
.contact-disclaimer{font-size:12px; opacity:.65; margin-top:8px}
.wave{display:inline-block; animation: waveHand 1.8s ease-in-out infinite; transform-origin: 70% 70%}
@keyframes waveHand{0%,100%{transform:rotate(0)}50%{transform:rotate(10deg)}}

/* Contact mobile styles moved to mobile.css */


/* ====== Header menu robot (clean) ====== */
.menu-robot{
  position:absolute; right: clamp(20px, 3vw, 40px); top: 50%;
  transform: translateY(-50%);
  width: 64px; height: 64px; z-index: 30; pointer-events:none;
  filter: drop-shadow(0 0 12px rgba(139,92,246,.5));
}
.robot-menu-img{ width:100%; height:100%; object-fit: contain; display:block; }

/* Remove orbit line on mobile to avoid visual conflicts */
@media (min-width: 861px){
.menu-robot::after{
  content:''; position:absolute; left:50%; top:50%;
    width: 120%; height:2px;
    background: linear-gradient(90deg, transparent 0%, rgba(168,85,247,0) 15%, rgba(168,85,247,0.9) 50%, rgba(168,85,247,0) 85%, transparent 100%);
    transform-origin: center -40px;
  transform: translate(-50%,-50%) rotate(0deg);
  border-radius: 2px; mix-blend-mode: screen;
    animation: orbitLine 2.8s linear infinite;
}
@keyframes orbitLine{ to{ transform: translate(-50%,-50%) rotate(360deg); } }
}

/* Robot mobile styles moved to mobile.css */


/* ===== Live section robot image (replace screenshot) ===== */
.robot-live-img{
  max-width: 680px; width: 100%; height: auto; display:block; margin: 0 auto;
  border-radius: 28px;
  filter: drop-shadow(0 0 20px rgba(139,92,246,.7)) drop-shadow(0 0 40px rgba(139,92,246,.5));
  animation: robotFadeZoom 900ms ease-out both, robotFloat 6s ease-in-out infinite 1200ms, glowPulse 3.2s ease-in-out infinite 1200ms;
}
.tech-illustration{ position: relative; overflow: visible; }
.tech-illustration::before{
  content:''; position:absolute; inset:-15px -20px -25px -20px; border-radius:32px;
  background: radial-gradient(120% 120% at 20% 0%, rgba(139,92,246,.25), transparent 55%);
  filter: blur(15px);
  pointer-events:none;
}

/* Prevent horizontal scrollbar from any decorative overflow */
html, body{ overflow-x: hidden; }
#bg-particles, .section, header, .site-header{ overflow-x: clip; }

/* v46: enlarge live robot and unify sizing */
.tech-visual{grid-template-columns:1.05fr .95fr}
.robot-live-img{max-width:560px}


/* === M2 Custom Overrides (2025-09-12 18:52:52) === */
:root{
  --m2-purple: #7C3AED;
  --m2-purple-600:#6D28D9;
  --m2-black:#0b0b0f;
  --m2-white:#ffffff;
  --m2-text:#ffffff;
  --m2-muted:#B3B3C2;
}
html, body{ overflow-x:hidden; background: var(--m2-black); color: var(--m2-text); }
h1,h2,h3,h4{ color: var(--m2-white); }
a, .link{ color: var(--m2-purple); }
a:hover{ color: var(--m2-purple-600); }
.btn, .button, .cta, .primary{
  background: var(--m2-purple) !important;
  color: var(--m2-white) !important;
  border: none !important;
  box-shadow: 0 8px 24px rgba(124,58,237,0.35);
  transition: transform .15s ease, box-shadow .2s ease;
}
.btn:hover, .button:hover, .cta:hover, .primary:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 28px rgba(124,58,237,0.45);
}
.badge, .pill{ background: rgba(124,58,237,0.15); color: var(--m2-white); }
.card{ background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.06); }
header, .navbar{ background: linear-gradient(180deg, rgba(11,11,15,0.95), rgba(11,11,15,0.65)); }
footer{ background: #0a0a0d; color: var(--m2-muted); }
img, svg, canvas{ max-width:100%; height:auto; }
section{ width:100%; box-sizing:border-box; }
.container{ max-width:1200px; margin-inline:auto; padding-inline: 16px; }
/* === END M2 Overrides === */


/* === M2: Fix CTAs (2025-09-12 19:03:14) === */
a, button, .btn, .button, .cta, .primary {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: auto !important;
  max-width: none !important;
  white-space: nowrap;
}
/* grupos comuns de CTAs */
.cta-row, .cta-group, .actions, .hero-ctas, .cta-list, .btn-group {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap;
}
/* fallback: qualquer link seguido de link vira espaçado */
a + a, .btn + .btn, .button + .button, .cta + .cta {
  margin-left: 12px !important;
}
/* remover largura total se houver tema forçando */
[class*="btn"][class*="block"], .btn-block {
  width: auto !important;
}
/* garantir que não vire barra roxa contínua */
a, .btn, .button, .cta, .primary {
  line-height: 1.1;
  padding: 12px 18px;
  border-radius: 10px;
}


/* === M2 Section Render Fix (2025-09-12 19:05:56) === */
.hero-ctas {
  display:flex !important;
  justify-content:center;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  margin: 16px auto 12px;
}
section[id], h2[id], h3[id] {
  scroll-margin-top: 96px; /* evita ficar escondido sob o header */
}
html {
  scroll-behavior: smooth;
}




/* === M2 CTA Split (2025-09-12 19:15:42) === */
.hero-ctas.cta-split {
  display: flex !important;
  justify-content: flex-start;
  align-items: center;
  gap: 16px !important;
  margin: 16px 0 8px;
  flex-wrap: wrap;
}
/* cada botão isolado */
.hero-ctas.cta-split > a,
.hero-ctas.cta-split > .btn,
.hero-ctas.cta-split > .button {
  display: inline-flex !important;
  width: auto !important;
  padding: 12px 18px;
  margin: 0 !important;
  border-radius: 10px !important;
  position: relative;
}
/* desativa pseudo-elementos que criam barra contínua */
.hero-ctas.cta-split > a::before,
.hero-ctas.cta-split > a::after,
.hero-ctas.cta-split > .btn::before,
.hero-ctas.cta-split > .btn::after {
  content: none !important;
}
/* evita que sombras/glows se unam visualmente */
.hero-ctas.cta-split > a {
  box-shadow: 0 8px 18px rgba(124,58,237,0.28) !important;
}
.hero-ctas.cta-split > a:hover {
  box-shadow: 0 10px 22px rgba(124,58,237,0.36) !important;
  transform: translateY(-1px);
}
/* fallback adicional: se por CSS antigo vierem colados, força um espaçamento mínimo */
.hero-ctas.cta-split > * + * {
  margin-left: 14px !important;
}


/* === Kill purple dots/pills under CTAs (global) === */
.hero-ctas + div, .hero-ctas + span { display:none !important; }
.hero-ctas + *::before, .hero-ctas + *::after { content:none !important; display:none !important; }
.pill, .dot, .decor, .divider, .separator { display:none !important; }


/* === M2 Scale Up (2025-09-14 00:20:39) === */
/* Desktop: ampliar container, títulos e espaçamentos */
@media (min-width: 1200px) {
  .container { max-width: 1320px !important; }
  h1 { font-size: clamp(3.25rem, 5.6vw, 4.9rem) !important; line-height: 1.06 !important; }
  h2 { font-size: clamp(2rem, 2.8vw, 3rem) !important; line-height: 1.15 !important; }
  .hero-ctas a, .btn, .button, .cta, .primary { padding: 14px 22px !important; font-weight: 600; }
  .card, .feature, .metric, .panel { padding: 26px !important; }
  section { padding-top: 88px; padding-bottom: 88px; }
}

/* Laptop padrão (>=992px) dá um pequeno boost */
@media (min-width: 992px) and (max-width: 1199.98px) {
  .container { max-width: 1160px !important; }
  h1 { font-size: clamp(3rem, 5vw, 4.2rem) !important; }
  .hero-ctas a { padding: 12px 20px !important; }
  .card { padding: 22px !important; }
}

/* === MOBILE BREAKPOINT ESPECÍFICO === */
@media (max-width: 640px) {
  /* Garantir que mobile.css tenha prioridade */
  .container { 
    padding: 0 16px !important; 
    max-width: 100% !important; 
  }
  .hero-ctas.cta-split {
    justify-content: center !important;
    gap: 12px !important;
  }
  
  /* === HERO VIZ FIXES === */
  .hero-viz {
    position: relative;
    min-height: auto;
  }
  .kpis {
    position: static !important;
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
  }
  .badges {
    position: static !important;
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
  }
  
  /* === SCROLL MARGIN PARA MOBILE === */
  section[id], h2[id], h3[id] {
    scroll-margin-top: 70px !important;
  }
}

/* Mobile pequeno styles moved to mobile.css */

/* === GRÁFICO DE VENDAS === */
.sales-chart-container {
  margin-top: 24px;
  padding: 20px;
  background: rgba(15, 19, 24, 0.6);
  border-radius: 16px;
  border: 1px solid rgba(139, 92, 246, 0.2);
}

.chart-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}

.chart-title {
  display: flex;
  align-items: center;
  gap: 12px;
}

.chart-title h4 {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 600;
  color: #ffffff;
}

.revenue-growth {
  background: linear-gradient(135deg, #10b981, #34d399);
  color: #ffffff;
  padding: 4px 8px;
  border-radius: 8px;
  font-size: 0.85rem;
  font-weight: 600;
}

.chart-filter-demo {
  display: flex;
  align-items: center;
  gap: 8px;
  background: rgba(139, 92, 246, 0.1);
  border: 1px solid rgba(139, 92, 246, 0.3);
  border-radius: 8px;
  padding: 6px 12px;
  position: relative;
}

.filter-label {
  font-size: 0.9rem;
  color: #cfe7ff;
  font-weight: 500;
}

.filter-indicator {
  width: 8px;
  height: 8px;
  background: linear-gradient(135deg, #8b5cf6, #34d3ee);
  border-radius: 50%;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.2);
    opacity: 0.7;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.chart-filter select:hover {
  border-color: rgba(139, 92, 246, 0.5);
}

.chart-filter select:focus {
  outline: none;
  border-color: #8b5cf6;
  box-shadow: 0 0 0 2px rgba(139, 92, 246, 0.2);
}

.chart-stats {
  margin-bottom: 16px;
}

.stat-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0;
}

.stat-label {
  font-size: 0.9rem;
  color: #cfe7ff;
}

.stat-value {
  font-size: 1.1rem;
  font-weight: 600;
  color: #8b5cf6;
}

.chart-wrapper {
  position: relative;
  height: 200px;
  background: rgba(0, 0, 0, 0.2);
  border-radius: 12px;
  padding: 16px;
  overflow: hidden;
}

.chart-wrapper::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(139, 92, 246, 0.05), rgba(34, 211, 238, 0.05));
  border-radius: 12px;
  pointer-events: none;
}

#salesChart {
  width: 100% !important;
  height: 100% !important;
  position: relative;
  z-index: 1;
}

/* === SOCIAL LINKS === */
.social-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  margin: 16px 0;
}

.social-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: rgba(139, 92, 246, 0.1);
  border: 1px solid rgba(139, 92, 246, 0.3);
  border-radius: 12px;
  color: #cfe7ff;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 500;
  transition: all 0.3s ease;
}

.social-link:hover {
  background: rgba(139, 92, 246, 0.2);
  border-color: rgba(139, 92, 246, 0.5);
  color: #ffffff;
  transform: translateY(-2px);
}

.social-link i {
  font-size: 1.1rem;
  color: #8b5cf6;
}

.social-link:hover i {
  color: #ffffff;
}

.instagram-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
  filter: brightness(0) saturate(100%) invert(60%) sepia(100%) saturate(2000%) hue-rotate(250deg) brightness(0.9) contrast(1.2);
  transition: all 0.3s ease;
}

.social-link:hover .instagram-icon {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(1) contrast(1);
}

/* Instagram específico */
.social-link.instagram:hover {
  background: linear-gradient(135deg, #8b5cf6, #e1306c);
  border-color: #e1306c;
}

.social-link.instagram:hover i {
  color: #ffffff;
}


/* === Balanceamento do H1 e largura ajustada === */
.hero h1, h1 {
  text-wrap: balance;
  word-break: normal;
  hyphens: manual;
}
@media (min-width: 992px) {
  .hero .title, .hero .copy, .hero-text, .hero-left {
    max-width: 42rem;
    margin-left: 0;
    margin-right: auto;
  }
}
