:root{
  --bg:#0a1020;--bg-2:#0b1022;--card:#0a0f1d;--ink:#e6eef9;--muted:#a7b0c2;
  --neon:#d6ff00;--neon-2:#c6ff3a;--border:#1b2340;
  --glow:0 0 24px rgba(209,255,0,0.22),0 0 48px rgba(209,255,0,0.12);
  --radius:16px;
  --hr-height:112px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Poppins,Manrope,system-ui,-apple-system,"Segoe UI",Roboto,Ubuntu,Cantarell,"Noto Sans","Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji";
  color:var(--ink);
  background:radial-gradient(1200px 800px at 90% -10%,#0f1a38 0%,transparent 60%),
             linear-gradient(180deg,var(--bg) 0%,#060a17 100%)
}
a{color:var(--neon);text-decoration:none}
a:hover{opacity:.9}
.container{width:min(1180px,92%);margin:0 auto}
.narrow{width:min(860px,92%);margin:0 auto}
.center{text-align:center}

/* NAV */
.navbar{
  position:sticky;top:0;z-index:50;
  background:rgba(7,11,24,0.35);
  border-bottom:1px solid rgba(255,255,255,0.04);
  backdrop-filter:saturate(140%) blur(0px);
  transition:backdrop-filter .2s,box-shadow .2s,background .2s
}
.navbar.scrolled{
  backdrop-filter:saturate(160%) blur(8px);
  background:rgba(7,11,24,0.55);
  box-shadow:0 2px 24px rgba(0,0,0,0.35)
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 4%}
.brand{display:flex;align-items:baseline;gap:10px;font-weight:700;letter-spacing:.4px}
.brand-dot{width:10px;height:10px;border-radius:50%;background:var(--neon);box-shadow:0 0 10px var(--neon)}
.brand-text{color:var(--neon);font-size:1.125rem}
.brand-sub{color:var(--muted);font-size:.85rem}

.nav-links{display:none;gap:22px;align-items:center}
.nav-links a{font-weight:600;letter-spacing:.3px}
.btn-outline{border:1px solid var(--neon);color:var(--neon);padding:10px 14px;border-radius:999px;transition:transform .15s,box-shadow .15s,background .15s}
.btn-outline:hover{transform:translateY(-1px);box-shadow:var(--glow);background:rgba(214,255,0,0.08)}

.hamburger{background:none;border:0;display:grid;gap:5px;padding:6px;cursor:pointer}
.hamburger span{width:26px;height:2px;background:var(--neon);display:block;border-radius:2px}

.offcanvas{
  position:fixed;inset:0 0 0 auto;width:100%;
  transform:translateX(100%);transition:transform .25s;
  background:linear-gradient(180deg,#040814 0%,#0d1328 100%);
  z-index:60;display:flex;flex-direction:column;padding:18px
}
.offcanvas.open{transform:translateX(0)}
.offcanvas-header{display:flex;align-items:center;justify-content:space-between}
.offcanvas-close{background:none;border:1px solid var(--border);color:var(--ink);border-radius:8px;padding:6px 10px;cursor:pointer}
.offcanvas-links{display:grid;margin-top:18px}
.offcanvas-links a{padding:14px 6px;border-bottom:1px solid rgba(255,255,255,0.05);font-weight:600}

.backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.5);opacity:0;pointer-events:none;transition:opacity .2s;z-index:55}
.backdrop.show{opacity:1;pointer-events:auto}

/* HERO */
.hero{
  position:relative;
  min-height:92vh;
  display:grid;
  align-items:center;
  padding:64px 0 44px
}
.hero-media{
  position:absolute;inset:0;
  background:
    radial-gradient(800px 400px at 80% 20%,rgba(0,34,85,0.35) 0%,transparent 60%),
    linear-gradient(180deg,rgba(0,6,24,0.6) 0%,rgba(0,0,0,0.75) 70%),
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='1600' height='900'><defs><filter id='b'><feGaussianBlur stdDeviation='12'/></filter></defs><rect width='100%' height='100%' fill='%23070e20'/><g filter='url(%23b)' opacity='0.7'><circle cx='1200' cy='200' r='240' fill='%230e1f46'/><circle cx='300' cy='280' r='200' fill='%230a1a3a'/><rect x='900' y='520' width='420' height='220' fill='%230c1730' rx='40'/></g></svg>");
  background-size:cover;background-position:center
}
.hero-overlay{
  position:absolute;inset:0;
  background:radial-gradient(1200px 800px at 100% 0%,rgba(0,20,60,0.55) 0%,rgba(0,0,0,0.75) 60%,rgba(0,0,0,0.9) 100%)
}
.hero-content{
  position:relative;z-index:2;display:grid;gap:18px;padding:0 4%;
  max-width:720px;margin-left:auto;text-align:left;
  transform:translateY(-3vh)
}
.headline{font-size:clamp(1.8rem,3vw+1rem,3rem);line-height:1.15;letter-spacing:.6px}
.neon{color:var(--neon)}
.subhead{color:var(--ink);opacity:.86;font-size:1.05rem}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}

/* ROTATOR MOBILE (ícone + altura fixa + crossfade) */
.hero-rotator{position:relative;height:var(--hr-height);margin-bottom:4px}
.hr-card{
  position:absolute;inset:0;
  display:grid;gap:8px;padding:12px 14px;border-radius:14px;
  background:linear-gradient(180deg,#080d1a 0%,#070c18 100%);
  border:1px solid var(--border);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.02);
  opacity:0;transform:translateY(-6px);
  transition:opacity .42s ease, transform .42s ease, filter .42s ease;will-change:opacity,transform,filter
}
.hr-card.show{opacity:1;transform:translateY(0)}
.hr-top{display:flex;align-items:center;gap:10px}
.hr-icon{width:28px;height:28px;display:grid;place-items:center;color:var(--neon);filter:drop-shadow(0 0 8px rgba(214,255,0,0.25))}
.hr-icon svg{width:28px;height:28px;display:block;color:inherit}
.hr-title{font-weight:800;color:#f1f6ff;letter-spacing:.35px}
.hr-desc{color:#aeb8cb;font-size:.95rem;line-height:1.35}

/* PÍLULAS (desktop) */
.hero-pills{
  margin-top:10px;display:flex;gap:10px;overflow-x:auto;padding:6px 2px 4px;
  -webkit-overflow-scrolling:touch;scrollbar-width:none
}
.hero-pills::-webkit-scrollbar{display:none}
.pill{
  flex:0 0 auto;font-weight:700;letter-spacing:.2px;font-size:.95rem;color:#dff8a1;
  background:linear-gradient(180deg,#0b142b 0%,#0a1020 100%);border:1px solid rgba(214,255,0,0.35);
  border-radius:999px;padding:8px 12px;box-shadow:0 0 10px rgba(214,255,0,0.10) inset, 0 4px 18px rgba(0,0,0,0.25);
  transition:transform .15s, box-shadow .15s, border-color .15s
}
.pill:hover{transform:translateY(-2px);box-shadow:0 0 14px rgba(214,255,0,0.16) inset, 0 8px 26px rgba(0,0,0,0.35)}
.pill-status{color:#e6ffe1;border-color:rgba(124,255,0,0.5);box-shadow:0 0 12px rgba(124,255,0,0.18) inset, 0 0 22px rgba(124,255,0,0.15)}
.pill-dot{display:inline-block;width:10px;height:10px;margin-right:8px;vertical-align:-1px;background:#7CFF00;border-radius:50%;box-shadow:0 0 10px rgba(124,255,0,0.65), 0 0 22px rgba(124,255,0,0.35);animation:pulseGreen 1.6s ease-in-out infinite}

/* Botões */
.btn-primary,.btn-ghost,.btn-lg{display:inline-flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:.4px;border-radius:999px;padding:12px 18px;cursor:pointer}
.btn-primary{background:linear-gradient(180deg,var(--neon) 0%,var(--neon-2) 100%);color:#07100a;border:1px solid rgba(0,0,0,0.15);box-shadow:0 0 0 rgba(0,0,0,0);animation:neonPulse 3.2s ease-in-out infinite}
.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--glow)}
.btn-ghost{border:1px solid var(--border);color:var(--ink);background:rgba(255,255,255,0.02)}
.btn-ghost:hover{border-color:var(--neon);color:var(--neon);box-shadow:0 0 16px rgba(209,255,0,0.15)}
@keyframes neonPulse{0%,100%{box-shadow:0 0 0 rgba(0,0,0,0)}50%{box-shadow:0 0 20px rgba(209,255,0,0.18),0 0 40px rgba(209,255,0,0.10)}}

/* Seta */
.scroll-down{
  position:absolute;z-index:3;bottom:clamp(18px,5vh,52px);left:50%;transform:translateX(-50%);
  font-size:24px;color:var(--neon);opacity:.9;animation:floatY 2.2s ease-in-out infinite
}
@keyframes floatY{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-8px)}}

/* FAB de chat */
.chat-fab{
  position:fixed;right:22px;bottom:22px;z-index:70;width:54px;height:54px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,var(--neon),var(--neon-2));
  color:#0a1407;border:none;cursor:pointer;box-shadow:var(--glow);
  display:grid;place-items:center;transition:transform .15s,box-shadow .15s,filter .15s
}
.chat-fab:hover{transform:translateY(-3px) scale(1.03);filter:saturate(120%)}
.chat-tip{
  position:fixed;right:86px;bottom:34px;z-index:70;max-width:260px;padding:10px 12px;background:linear-gradient(180deg,#0b132b 0%,#0a1020 100%);border:1px solid rgba(214,255,0,0.45);color:#eaf7d1;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,0.35),0 0 16px rgba(214,255,0,0.18) inset;font-size:.95rem;line-height:1.35;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease, transform .18s ease
}
.chat-tip::after{content:"";position:absolute;right:-8px;bottom:12px;width:0;height:0;border-left:8px solid rgba(214,255,0,0.45);border-top:8px solid transparent;border-bottom:8px solid transparent;filter:drop-shadow(0 0 8px rgba(214,255,0,0.25))}
.chat-tip.show{opacity:1;transform:translateY(0);pointer-events:auto}

/* Neon divider */
.neon-divider{height:1px;width:92%;margin:0 auto;background:linear-gradient(90deg,transparent 0%,rgba(214,255,0,0.75) 10%,rgba(214,255,0,0.9) 50%,rgba(214,255,0,0.75) 90%,transparent 100%);box-shadow:0 0 14px rgba(209,255,0,0.25)}

/* Seções */
.section{padding:70px 0}
.section-title{font-size:clamp(1.4rem,1.2rem + 1.6vw,2.1rem);letter-spacing:.8px;margin:0 0 20px;color:#f2f7ff}
.bullets{padding-left:18px;line-height:1.8}
.bullets li+li{margin-top:4px}

/* Cards genéricos */
.cards{display:grid;grid-template-columns:1fr;gap:14px}
.card{background:linear-gradient(180deg,#080d1a 0%,#070c18 100%);border:1px solid var(--border);border-radius:var(--radius);padding:18px;transition:transform .15s,box-shadow .15s,border-color .15s}
.card:hover{transform:translateY(-4px);box-shadow:0 8px 40px rgba(209,255,0,0.10),0 0 32px rgba(209,255,0,0.08);border-color:rgba(214,255,0,0.35)}
.card h3{margin:6px 0 8px}
.card p{margin:0;color:var(--muted)}
.card-icon{width:36px;height:36px;color:var(--neon);opacity:.95}

/* Duas colunas */
.two-col{display:grid;grid-template-columns:1fr;gap:24px;align-items:start}
.col{min-width:0}

/* Terminal */
.terminal{border:1px solid var(--border);border-radius:12px;background:#050914;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.02)}
.terminal-header{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#0a1022 0%,#070d1e 100%)}
.terminal-header .dot{width:10px;height:10px;border-radius:50%;background:#1f2b52;display:inline-block}
.terminal-header .title{margin-left:auto;font-size:.85rem;color:#98a4be}
.terminal-body{margin:0;padding:14px 12px 18px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;color:var(--neon);min-height:180px;white-space:pre-wrap}

/* SOC */
.soc{background:linear-gradient(180deg,#071129 0%,#091637 100%);border-top:1px solid rgba(255,255,255,0.04);border-bottom:1px solid rgba(255,255,255,0.04)}
.grid{display:grid;grid-template-columns:1fr;gap:10px;margin:0;padding-left:18px}
.badge{display:inline-block;margin-top:14px;padding:8px 12px;border-radius:999px;border:1px solid rgba(214,255,0,0.5);color:var(--neon);font-weight:700;letter-spacing:.4px;background:rgba(214,255,0,0.06);box-shadow:0 0 12px rgba(214,255,0,0.18) inset}

/* Prova social */
.logo-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0 8px}
.logo.ph{display:grid;place-items:center;height:56px;border:1px dashed var(--border);border-radius:10px;color:#9daccc;letter-spacing:2px;background:rgba(255,255,255,0.01)}
.quote{margin:8px 0 0;padding:16px;border-left:3px solid var(--neon);background:linear-gradient(90deg,rgba(214,255,0,0.08),transparent 60%);color:#dbe6ff}

/* Contato */
.services .card h3{color:#f0f6ff}
.contact{align-items:start}
.contact-form{display:grid;gap:10px}
.contact-form input,.contact-form textarea{background:#070c18;border:1px solid var(--border);border-radius:10px;padding:10px 12px;color:var(--ink);outline:none}
.contact-form input:focus,.contact-form textarea:focus{border-color:rgba(214,255,0,0.35);box-shadow:0 0 0 3px rgba(214,255,0,0.10)}
.contact-form button{justify-self:start}

/* CTA */
.cta{background:radial-gradient(900px 500px at 50% -20%,rgba(214,255,0,0.15),transparent 60%),linear-gradient(180deg,#08102a 0%,#060a19 100%);border-top:1px solid rgba(255,255,255,0.04);border-bottom:1px solid rgba(255,255,255,0.04)}
.btn-lg{padding:14px 22px;font-size:1.05rem}

/* Footer */
.footer{background:#060a17;margin-top:30px}
.footer-grid{display:grid;grid-template-columns:1fr;gap:18px;padding:30px 0}
.footer .fcol h3{margin:0 0 8px}
.footer .fcol p,.footer .fcol li{color:#aeb8cb}
.footer .fcol ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.footer-bar{border-top:1px solid rgba(255,255,255,0.05);text-align:center;padding:14px 0;color:#9fafc8;font-size:.95rem}

/* Status (nav) */
.ops-badge{display:none;align-items:center;gap:8px;margin-left:auto;padding:8px 12px;border-radius:999px;border:1px solid rgba(124,255,0,0.40);background:rgba(124,255,0,0.06);color:#bcefb3;font-weight:700;letter-spacing:.3px;white-space:nowrap;transition:transform .15s,box-shadow .15s,border-color .15s}
.ops-badge:hover{transform:translateY(-1px);border-color:rgba(124,255,0,0.65);box-shadow:0 0 18px rgba(124,255,0,0.18)}
.ops-dot{width:10px;height:10px;border-radius:50%;background:#7CFF00;box-shadow:0 0 10px rgba(124,255,0,0.65),0 0 22px rgba(124,255,0,0.35);animation:pulseGreen 1.6s ease-in-out infinite}
.ops-text{color:#e6ffe1}

/* Chips conectados (desktop) */
.hero-stats{position:relative;z-index:2;display:none;gap:14px;padding:0 4%}
.hero-stats::before{content:"";position:absolute;left:22px;top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,rgba(214,255,0,0.25),rgba(214,255,0,0.85),rgba(214,255,0,0.25));box-shadow:0 0 18px rgba(214,255,0,0.25),inset 0 0 8px rgba(214,255,0,0.15)}
.hs-card{position:relative;display:flex;align-items:center;gap:14px;background:linear-gradient(180deg,#080d1a 0%,#070c18 100%);border:1px solid var(--border);border-radius:16px;padding:14px 18px;width:min(620px,100%);min-height:64px;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.02);margin-left:48px;transition:transform .15s,box-shadow .15s,border-color .15s}
.hs-card:hover{transform:translateY(-4px);box-shadow:0 8px 40px rgba(209,255,0,0.10),0 0 32px rgba(209,255,0,0.08);border-color:rgba(214,255,0,0.35)}
.hs-card::before{content:"";position:absolute;left:-28px;top:50%;transform:translateY(-50%);width:28px;height:2px;background:linear-gradient(90deg,rgba(214,255,0,0),rgba(214,255,0,0.6));box-shadow:0 0 10px rgba(214,255,0,0.25)}
.hs-icon{width:20px;height:20px;flex:0 0 auto;color:#7CFF00;filter:drop-shadow(0 0 6px rgba(124,255,0,0.55)) drop-shadow(0 0 18px rgba(124,255,0,0.28));animation:pulseGreen 1.6s ease-in-out infinite}
.hs-text{display:grid;line-height:1.28}
.hs-text strong{color:#f1f6ff;letter-spacing:.35px;font-size:1.02rem}
.hs-text span{color:#aeb8cb;font-size:.96rem}

@keyframes pulseGreen{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}

/* Responsivo */
@media (min-width:880px){
  .nav-links{display:flex}
  .hamburger{display:none}
  .hero{grid-template-columns:1fr 1fr;align-items:center}
  .hero-stats{display:grid;justify-self:end;width:min(700px,94%);padding-right:4%;transform:translateY(-3vh)}
  .hero-content{margin-left:auto;margin-right:4%;max-width:720px;text-align:left;transform:translateY(-3.5vh)}
  .hero-rotator{display:none}
  .hero-pills{max-width:620px;margin-top:6px}
  .cards{grid-template-columns:repeat(4,1fr)}
  .two-col{grid-template-columns:1.1fr .9fr}
  .grid{grid-template-columns:repeat(2,1fr)}
  .logo-row{grid-template-columns:repeat(5,1fr)}
  .footer-grid{grid-template-columns:1.2fr 1fr 1fr}
  .ops-badge{display:inline-flex}
}

/* Mobile: quando rotator ativo, escondemos as pílulas */
@media (max-width:879px){
  .hero-pills{display:none}
}
/* Offcanvas: "Contato" igual aos outros itens (neon, sem contorno) */
.offcanvas-links .btn-outline{
  border: 0;
  background: transparent;
  color: var(--neon);          /* antes estava var(--ink) (branco) */
  border-radius: 0;
  padding: 14px 6px;
  box-shadow: none;
  transform: none;
}
.offcanvas-links .btn-outline:hover{
  color: var(--neon);
  background: transparent;
  border: 0;
  box-shadow: none;
  transform: none;
}