/* ====================================================================
   Argos — landing /argos · dark premium enterprise
   Tokens espelham o produto (theme.css / panorama.css).
   ==================================================================== */

:root {
  --bg:#161d2b; --bg-2:#1b2231; --bg-soft:#1f283a; --bg-deep:#121826;
  --card:#1f2940; --card-2:#243150; --line:#2f3f5c; --line-soft:#26334d;
  --text:#e9eef5; --text-strong:#ffffff; --muted:#8ea0b3; --muted-2:#6f8197;
  --accent:#5eead4; --accent-2:#34d399; --cyan:#22d3ee; --green:#00a97a;
  --danger:#ff7676; --warn:#f5b14a;
  --brand-1:#1d2c4d; --brand-2:#151d2e;
  --glow:94,234,212;
  --shadow-card:0 40px 90px -30px rgba(0,0,0,.7), 0 1px 0 rgba(255,255,255,.04) inset;
  --shadow-soft:0 18px 44px -20px rgba(0,0,0,.55);
  --shadow-sm:0 10px 30px -16px rgba(0,0,0,.6);
  --radius:18px; --radius-md:14px; --radius-sm:11px; --maxw:1200px;
  --font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --logo:url('brand/argos-lockup-dark.png'); --infraops-logo:url('brand/infraops-default.svg'); --infraops-filter:brightness(0) invert(1); --grain-op:.03;
}
[data-theme="light"] {
  --bg:#f1f5f9; --bg-2:#e9eef4; --bg-soft:#eef3f8; --bg-deep:#e3eaf1;
  --card:#ffffff; --card-2:#f7fafc; --line:#d8e1ea; --line-soft:#e7edf3;
  --text:#16202e; --text-strong:#0a1320; --muted:#5a6b7c; --muted-2:#7588998;
  --accent:#0d9488; --accent-2:#059669; --cyan:#0891b2; --green:#00936b;
  --danger:#dc2626; --warn:#d97706; --brand-1:#dcebe9; --brand-2:#eef4f3;
  --glow:13,148,136;
  --shadow-card:0 40px 84px -32px rgba(31,58,88,.26), 0 1px 0 rgba(255,255,255,.7) inset;
  --shadow-soft:0 18px 40px -20px rgba(31,58,88,.18);
  --shadow-sm:0 10px 26px -16px rgba(31,58,88,.2);
  --logo:url('brand/argos-lockup-light.png'); --infraops-logo:url('brand/infraops-default.svg'); --infraops-filter:brightness(0) opacity(.55); --grain-op:.018;
}

* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
[id] { scroll-margin-top:88px; }
body {
  font-family:var(--font); background:var(--bg); color:var(--text);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  line-height:1.55; overflow-x:hidden; transition:background .4s, color .4s;
}
body::after {
  content:''; position:fixed; inset:0; z-index:1; pointer-events:none; opacity:var(--grain-op);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
a { color:inherit; text-decoration:none; }
.wrap { max-width:var(--maxw); margin:0 auto; padding:0 28px; }

/* reveal — motion.js (GSAP) esconde e anima; sem JS (ou reduced-motion), tudo visível */
.js .reveal { opacity:0; }
.js [data-hero] { opacity:0; }

/* ---------- NAV ---------- */
.nav {
  position:sticky; top:0; z-index:60; backdrop-filter:blur(18px) saturate(140%);
  background:color-mix(in srgb, var(--bg) 74%, transparent);
  border-bottom:1px solid color-mix(in srgb, var(--line) 55%, transparent);
}
.nav-inner { display:flex; align-items:center; gap:30px; height:74px; }
.logo { width:150px; height:30px; background:var(--logo) no-repeat left center/contain; flex:none; }
.nav-links { display:flex; gap:28px; margin-left:14px; }
.nav-links a { font-size:14px; font-weight:450; color:var(--muted); transition:color .2s; position:relative; }
.nav-links a::after { content:''; position:absolute; left:0; bottom:-6px; height:1.5px; width:0; background:var(--accent); transition:width .25s; }
.nav-links a:hover { color:var(--text); } .nav-links a:hover::after { width:100%; }
.nav-right { margin-left:auto; display:flex; align-items:center; gap:13px; }
.theme-toggle {
  width:39px; height:39px; border-radius:11px; border:1px solid var(--line);
  background:color-mix(in srgb, var(--card) 70%, transparent); color:var(--muted);
  cursor:pointer; display:grid; place-items:center; transition:.22s; flex:none;
}
.theme-toggle:hover { border-color:var(--accent); color:var(--accent); transform:translateY(-1px); }
.theme-toggle svg { width:17px; height:17px; } .theme-toggle .ico-sun { display:none; }
[data-theme="light"] .theme-toggle .ico-sun { display:block; } [data-theme="light"] .theme-toggle .ico-moon { display:none; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; font-size:14px; font-weight:600;
  padding:12px 22px; border-radius:11px; cursor:pointer; border:1px solid transparent; transition:.22s; white-space:nowrap; }
.btn.lg { padding:14px 27px; font-size:15px; } .btn.block { width:100%; margin-top:4px; }
.btn-primary { color:#06231f; background:linear-gradient(180deg, color-mix(in srgb,var(--accent) 92%,#fff), var(--accent));
  box-shadow:0 12px 30px -8px rgba(var(--glow),.5), 0 1px 0 rgba(255,255,255,.5) inset; }
.btn-primary:hover { filter:brightness(1.05); transform:translateY(-1.5px); box-shadow:0 18px 38px -10px rgba(var(--glow),.62); }
.btn-ghost { background:transparent; border-color:var(--line); color:var(--text); }
.btn-ghost:hover { border-color:var(--accent); color:var(--accent); background:rgba(var(--glow),.05); }
.btn-enter { font-size:13.5px; font-weight:500; color:var(--text); padding:9px 16px; border:1px solid var(--line); border-radius:10px; transition:.2s; }
.btn-enter:hover { border-color:var(--accent); color:var(--accent); }

/* ---------- SECTION SCAFFOLD ---------- */
.sec { position:relative; z-index:2; padding:96px 0; }
.sec-head { text-align:center; max-width:680px; margin:0 auto 52px; }
.eyebrow { display:inline-flex; align-items:center; gap:9px; font-size:11.5px; font-weight:600; letter-spacing:2.4px;
  color:var(--accent); text-transform:uppercase; padding:7px 14px; border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));
  border-radius:100px; background:rgba(var(--glow),.07); margin-bottom:24px; }
.eyebrow::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--accent); box-shadow:0 0 10px var(--accent); }
.eyebrow.sm { margin-bottom:18px; }
h2 { font-size:38px; line-height:1.12; letter-spacing:-1px; font-weight:300; color:var(--text-strong); }
h2 b { font-weight:700; background:linear-gradient(92deg,var(--accent),var(--accent-2)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.sec-head p { margin-top:18px; font-size:17px; line-height:1.6; font-weight:300; color:var(--muted); }

/* ---------- HERO ---------- */
.hero { position:relative; padding:84px 0 96px; z-index:2; }
.hero::before { content:''; position:absolute; inset:0; z-index:-2;
  background:
    radial-gradient(1000px 560px at 80% 0%, rgba(var(--glow),.16), transparent 56%),
    radial-gradient(760px 600px at 0% 80%, rgba(var(--glow),.07), transparent 60%),
    linear-gradient(180deg, var(--brand-1), var(--bg) 62%); }
.hero::after { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
  -webkit-mask-image:radial-gradient(700px 480px at 78% 18%, #000, transparent 72%); mask-image:radial-gradient(700px 480px at 78% 18%, #000, transparent 72%);
  background-image:radial-gradient(rgba(var(--glow),.15) 1px, transparent 1px); background-size:26px 26px; opacity:.5; }
.hero-grid { display:grid; grid-template-columns:1.02fr 1.12fr; gap:66px; align-items:center; }
.hero-copy h1 { font-size:52px; line-height:1.06; letter-spacing:-1.6px; font-weight:300; color:var(--text-strong); margin:24px 0 22px; }
.hero-copy h1 b { font-weight:700; background:linear-gradient(92deg,var(--accent),var(--accent-2)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.hero-subhead { font-size:19px; font-weight:500; color:var(--text); margin-bottom:16px; letter-spacing:-.2px; }
.hero-sub { font-size:17px; line-height:1.62; font-weight:300; color:var(--muted); max-width:530px; margin-bottom:18px; }
.hero-sub strong { color:var(--text); font-weight:500; }
.hero-comp { font-size:14.5px; line-height:1.6; color:var(--muted); font-weight:300; max-width:530px; margin-bottom:30px;
  padding-left:15px; border-left:2px solid color-mix(in srgb,var(--accent) 55%,transparent); }
.hero-comp strong { color:var(--text); font-weight:500; } .hero-comp .spark { color:var(--accent); margin-right:6px; }
.hero-cta { display:flex; gap:14px; flex-wrap:wrap; }
.hero-seals { list-style:none; display:flex; gap:22px; flex-wrap:wrap; margin-top:24px; }
.hero-seals li { font-size:13px; color:var(--muted); display:flex; align-items:center; gap:8px; }
.hero-seals li::before { content:'✓'; color:var(--accent-2); font-weight:700; font-size:12px; }

.hero-visual { position:relative; }
.monitor { position:relative; z-index:2; border-radius:var(--radius); overflow:hidden; background:var(--card-2);
  border:1px solid var(--line); box-shadow:var(--shadow-card); transform:perspective(2200px) rotateY(-6deg) rotateX(3deg); transition:transform .6s cubic-bezier(.2,.7,.2,1); }
.monitor:hover { transform:perspective(2200px) rotateY(-2deg) rotateX(1deg); }
.monitor-bar { display:flex; align-items:center; gap:8px; height:40px; padding:0 15px; background:color-mix(in srgb,var(--bg-soft) 80%,#000 8%); border-bottom:1px solid var(--line); }
.monitor-bar i { width:11px; height:11px; border-radius:50%; } .monitor-bar .r{background:#ff5f57}.monitor-bar .y{background:#febc2e}.monitor-bar .g{background:#28c840}
.monitor-bar span { margin-left:12px; font-size:12px; color:var(--muted); background:var(--bg); border:1px solid var(--line); padding:5px 16px; border-radius:8px; }
.monitor img { display:block; width:100%; height:auto; }
.monitor-glow { position:absolute; inset:8% 4%; z-index:1; border-radius:40px; background:radial-gradient(closest-side, rgba(var(--glow),.34), transparent 72%); filter:blur(46px); }
.laptop-wrap { position:relative; z-index:2; width:120%; margin-left:-6%; }
.hero-laptop { display:block; width:100%; height:auto;
  filter:drop-shadow(0 30px 50px rgba(0,0,0,.55)); cursor:zoom-in; }
@media (max-width:980px){ .laptop-wrap { width:104%; margin-left:0; } }

/* ---------- GRIDS / CARDS ---------- */
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:26px 24px; transition:.25s; }
.card:hover { transform:translateY(-4px); border-color:color-mix(in srgb,var(--accent) 42%,var(--line)); box-shadow:var(--shadow-soft); }
.ico { display:inline-grid; place-items:center; width:46px; height:46px; border-radius:13px; margin-bottom:18px;
  color:var(--accent); background:rgba(var(--glow),.10); border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line)); }
.ico svg { width:22px; height:22px; }
.card h3 { font-size:16.5px; font-weight:600; color:var(--text-strong); margin-bottom:9px; letter-spacing:-.2px; }
.card p { font-size:13.5px; line-height:1.6; color:var(--muted); font-weight:300; }
.dor .pain .ico { color:var(--warn); background:rgba(245,177,74,.10); border-color:rgba(245,177,74,.28); }
.dico { color:var(--accent); font-size:15px; margin-right:6px; } .dico.lg { display:block; font-size:22px; margin:0 0 14px; }

/* ---------- 4. FLOW ---------- */
.flow { display:flex; align-items:stretch; justify-content:center; gap:14px; }
.flow-col { display:flex; } .flow-col.center { flex:1.15; max-width:430px; }
.flow-card { flex:1; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:26px 24px; min-width:230px; }
.flow-card.hl { border-color:color-mix(in srgb,var(--accent) 55%,var(--line)); background:linear-gradient(180deg, color-mix(in srgb,var(--accent) 7%,var(--card)), var(--card));
  box-shadow:0 0 0 1px rgba(var(--glow),.12), 0 30px 70px -30px rgba(var(--glow),.3); }
.flow-tag { font-size:11px; letter-spacing:1.6px; text-transform:uppercase; color:var(--muted-2); font-weight:600; }
.flow-tag.accent { color:var(--accent); }
.flow-card h4 { font-size:24px; font-weight:700; letter-spacing:.5px; margin:8px 0 16px; color:var(--text-strong); }
.flow-card.hl h4 { font-size:30px; background:linear-gradient(92deg,var(--accent),var(--accent-2)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.flow-card ul { list-style:none; display:flex; flex-direction:column; gap:8px; }
.flow-card ul.two { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.flow-card li { font-size:13px; color:var(--text); padding:7px 12px; border:1px solid var(--line); border-radius:9px; background:var(--bg-soft); }
.flow-card.hl li { border-color:color-mix(in srgb,var(--accent) 30%,var(--line)); }
.flow-arrow { align-self:center; color:var(--accent); font-size:22px; opacity:.7; }

/* ---------- 4b. FLOW2 (Como funciona — design dark) ---------- */
.flow2 { display:flex; align-items:stretch; justify-content:center; gap:16px; }
.flow2-col { flex:1; display:flex; flex-direction:column; gap:18px; } .flow2-col.center { flex:1.18; }
.flow2-step { display:flex; gap:13px; align-items:flex-start; min-height:96px; }
.flow2-step .num { width:30px; height:30px; border-radius:50%; flex:none; display:grid; place-items:center;
  font-size:13px; font-weight:700; color:var(--text-strong); border:1px solid var(--line); background:var(--bg-soft); }
.flow2-step .num.accent { border-color:var(--accent); color:var(--accent); background:rgba(var(--glow),.1); box-shadow:0 0 0 4px rgba(var(--glow),.06); }
.flow2-step b { font-size:12.5px; letter-spacing:1.8px; text-transform:uppercase; color:var(--accent); font-weight:600; }
.flow2-step p { font-size:12.5px; line-height:1.5; color:var(--muted); margin-top:5px; font-weight:300; }
.flow2-box { flex:1; background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:22px; }
.flow2-box h3 { font-size:21px; font-weight:700; letter-spacing:.5px; color:var(--text-strong); margin-bottom:15px; }
.flow2-box ul { list-style:none; display:flex; flex-direction:column; gap:9px; }
.flow2-box ul.two { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.flow2-box li { font-size:13px; color:var(--text); padding:9px 13px; border:1px solid var(--line); border-radius:10px; background:var(--bg-soft); display:flex; align-items:center; gap:9px; }
.flow2-box li::before { content:''; width:6px; height:6px; border-radius:2px; background:var(--accent); opacity:.65; flex:none; }
.flow2-box.hl { border-color:color-mix(in srgb,var(--accent) 52%,var(--line)); background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 7%,var(--card)),var(--card));
  box-shadow:0 0 0 1px rgba(var(--glow),.12), 0 34px 80px -34px rgba(var(--glow),.35); }
.flow2-box.hl li::before { opacity:1; }
.argos-mark { display:flex; justify-content:center; padding:4px 0 18px; } .argos-mark img { height:30px; }
.flow2-arrow { align-self:center; color:var(--accent); font-size:20px; opacity:.6; margin-top:62px; }

/* ---------- 5. DELIVER (minis) ---------- */
.deliver .deliv { padding:0; overflow:hidden; }
.deliv .mini { height:140px; padding:18px; background:linear-gradient(180deg,var(--bg-soft),var(--bg-2)); border-bottom:1px solid var(--line); display:flex; }
.deliv .shot-thumb { position:relative; height:178px; overflow:hidden; border-bottom:1px solid var(--line); background:var(--bg-deep); }
.deliv .shot-thumb img { width:100%; height:100%; object-fit:cover; object-position:top left; display:block; transition:transform .55s cubic-bezier(.2,.7,.2,1); filter:saturate(1.06) contrast(1.02); }
.deliv:hover .shot-thumb img { transform:scale(1.045); }
.deliv .shot-thumb::after { content:''; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(var(--glow),.06), transparent 26%, color-mix(in srgb,var(--card) 62%,transparent)); }
.deliv h3 { padding:18px 22px 0; } .deliv p { padding:0 22px 22px; }
.deliver { display:flex; flex-wrap:wrap; justify-content:center; gap:22px; max-width:900px; margin:0 auto; }
.deliver .deliv { flex:0 1 calc(33.333% - 15px); min-width:0; }
.mini-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.mini-grid div { background:var(--card); border:1px solid var(--line); border-radius:10px; padding:8px 11px; display:flex; flex-direction:column; justify-content:center; }
.mini-grid b { font-size:18px; font-weight:300; color:var(--accent); } .mini-grid span { font-size:10px; color:var(--muted); text-transform:uppercase; letter-spacing:.6px; }
.mini-grid .up b { color:var(--accent-2); }
.mini-pulse { align-items:center; gap:16px; }
.donut { width:90px; height:90px; border-radius:50%; display:grid; place-items:center; position:relative; flex:none;
  background:conic-gradient(var(--accent) calc(var(--p)*1%), color-mix(in srgb,var(--line) 70%,transparent) 0); }
.donut::before { content:''; position:absolute; inset:9px; border-radius:50%; background:var(--bg-2); }
.donut b { position:relative; font-size:17px; font-weight:300; color:var(--text-strong); }
.mini-lines { display:flex; flex-direction:column; gap:9px; } .mini-lines span { font-size:12.5px; color:var(--muted); } .mini-lines em { color:var(--accent); font-style:normal; font-weight:600; }
.mini-bars { align-items:flex-end; gap:9px; }
.mini-bars i { flex:1; height:var(--h); background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 40%,transparent)); border-radius:5px 5px 2px 2px; min-height:14%; }
.mini-bars i.hot { background:linear-gradient(180deg,var(--warn),color-mix(in srgb,var(--warn) 35%,transparent)); }
.mini-table { flex-direction:column; justify-content:center; gap:11px; }
.mini-table div { display:flex; align-items:center; gap:12px; } .mini-table span { width:78px; font-size:12px; color:var(--muted); }
.mini-table i { flex:1; height:8px; background:var(--bg); border-radius:6px; overflow:hidden; }
.mini-table u { display:block; height:100%; width:var(--w); background:var(--accent); border-radius:6px; } .mini-table u.warn { background:var(--warn); }
.mini-report { flex-direction:column; gap:10px; } .mini-report svg { width:100%; height:58px; }
.mini-kpis { display:flex; gap:14px; } .mini-kpis span { display:flex; flex-direction:column; font-size:10px; color:var(--muted); text-transform:uppercase; letter-spacing:.5px; }
.mini-kpis b { font-size:16px; font-weight:300; color:var(--accent); text-transform:none; letter-spacing:0; }
.mini-actions { flex-direction:column; justify-content:center; gap:11px; } .mini-actions div { display:flex; align-items:center; gap:10px; font-size:13px; color:var(--text); }
.mini-actions em { margin-left:auto; font-style:normal; font-size:11px; color:var(--muted); font-weight:600; }
.mini-actions .p { width:9px; height:9px; border-radius:50%; } .p1{background:var(--danger)} .p2{background:var(--warn)} .p3{background:var(--accent)}

/* ---------- 6. SHOTS ---------- */
.shots-sec { background:linear-gradient(180deg,var(--bg),var(--bg-deep) 50%,var(--bg)); }
.shot-row { display:grid; grid-template-columns:.85fr 1.15fr; gap:48px; align-items:center; margin-bottom:64px; }
.shot-row:last-child { margin-bottom:0; }
.shot-row.rev .shot-text { order:2; } .shot-row.rev .panel { order:1; }
.shot-text h3 { font-size:24px; font-weight:500; color:var(--text-strong); letter-spacing:-.4px; margin-bottom:14px; }
.shot-text p { font-size:15.5px; line-height:1.65; color:var(--muted); font-weight:300; }
.panel { border-radius:var(--radius); overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow-card); background:var(--card); position:relative; }
.panel::after { content:''; position:absolute; inset:0; pointer-events:none; box-shadow:0 0 0 1px rgba(var(--glow),.1) inset; border-radius:var(--radius); }
.panel img { display:block; width:100%; height:auto; }

/* ---------- 7. PRTG BAND ---------- */
.prtg-sec { padding:60px 0; }
.band { border-radius:24px; border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line)); padding:54px 48px;
  background:radial-gradient(900px 400px at 50% 0%, rgba(var(--glow),.12), transparent 60%), linear-gradient(180deg,var(--card),var(--bg-2)); }
.band-head { text-align:center; max-width:680px; margin:0 auto 36px; }
.link-ico { font-size:26px; display:inline-block; margin-bottom:14px; filter:grayscale(.2); }
.band-head p { margin-top:16px; font-size:16px; line-height:1.6; color:var(--muted); font-weight:300; }
/* ---------- 10. CTA ---------- */
.cta-final { position:relative; z-index:2; padding:92px 0; background:linear-gradient(180deg,var(--bg),var(--brand-1)); border-top:1px solid var(--line-soft); }
.cta-grid { display:grid; grid-template-columns:1fr .92fr; gap:56px; align-items:center; }
.cta-copy h2 { font-size:34px; } .cta-copy p { margin-top:18px; font-size:16.5px; line-height:1.62; color:var(--muted); font-weight:300; }
.cta-checks { list-style:none; margin-top:22px; display:flex; flex-direction:column; gap:11px; }
.cta-checks li { font-size:14px; color:var(--text); display:flex; align-items:center; gap:10px; } .cta-checks li::before { content:'✓'; color:var(--accent-2); font-weight:700; }
.cta-form { background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:28px; box-shadow:var(--shadow-card); display:flex; flex-direction:column; gap:14px; }
.cta-form label { display:flex; flex-direction:column; gap:7px; font-size:12.5px; font-weight:500; color:var(--muted); }
.cta-form input, .cta-form textarea { font-family:inherit; font-size:14px; color:var(--text); background:var(--bg-soft); border:1px solid var(--line); border-radius:10px; padding:11px 13px; transition:.2s; resize:vertical; }
.cta-form input::placeholder, .cta-form textarea::placeholder { color:var(--muted-2); }
.cta-form input:focus, .cta-form textarea:focus { outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(var(--glow),.12); }
.cta-form small { font-size:11.5px; color:var(--muted-2); text-align:center; }

/* ---------- FOOTER ---------- */
.foot { border-top:1px solid var(--line-soft); background:var(--bg-deep); position:relative; z-index:2; }
.foot-inner { display:flex; align-items:center; gap:18px; padding:28px 0; flex-wrap:wrap; }
.foot .logo { width:104px; height:22px; opacity:.92; }
.foot-inner span { font-size:12.5px; color:var(--muted); } .foot-inner b { color:var(--text); } .foot-inner span:last-child { margin-left:auto; }
.foot-dev { display:flex; align-items:center; justify-content:center; gap:10px; padding:16px 0 26px;
  border-top:1px solid var(--line-soft); }
.foot-dev span { font-size:10.5px; letter-spacing:1.4px; color:var(--muted); text-transform:uppercase; font-weight:500; }
.infraops-logo { display:inline-block; width:80px; height:13px; background:var(--infraops-logo) no-repeat left center/contain;
  filter:var(--infraops-filter); opacity:.5; transition:opacity .2s; }
.infraops-logo:hover { opacity:.78; }

/* ---------- AUTORIDADE ---------- */
.authority { position:relative; z-index:2; padding:64px 0; }
.auth-band { position:relative; overflow:hidden; text-align:center; max-width:880px; margin:0 auto; padding:54px 48px 50px;
  border-radius:24px; border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));
  background:radial-gradient(800px 360px at 50% 0%, rgba(var(--glow),.12), transparent 62%), linear-gradient(180deg,var(--card),var(--bg-2));
  box-shadow:var(--shadow-soft); }
.auth-band h2 { position:relative; font-size:30px; }
.auth-band p { position:relative; margin:16px auto 0; max-width:620px; font-size:15.5px; line-height:1.65; color:var(--muted); font-weight:300; }

/* ---------- LIGHTBOX ---------- */
.shot-thumb img, .panel img, .monitor img { cursor:zoom-in; }
.panel, .monitor { cursor:zoom-in; }
.panel::before, .shot-thumb::before { content:'Ampliar ⤢'; position:absolute; right:12px; bottom:12px; z-index:3;
  font-size:11px; font-weight:500; letter-spacing:.4px; color:#e9eef5; padding:6px 11px; border-radius:8px;
  background:rgba(10,17,28,.68); border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));
  backdrop-filter:blur(6px); opacity:0; transform:translateY(4px); transition:.25s; pointer-events:none; }
.panel:hover::before, .shot-thumb:hover::before { opacity:1; transform:none; }
html[lang="en"] .panel::before, html[lang="en"] .shot-thumb::before { content:'Expand ⤢'; }
.lb { position:fixed; inset:0; z-index:200; display:none; align-items:center; justify-content:center; padding:6vh 6vw;
  background:color-mix(in srgb,#04070d 84%,transparent); backdrop-filter:blur(12px) saturate(120%); opacity:0; transition:opacity .28s ease; }
.lb.open { display:flex; opacity:1; }
.lb-frame { margin:0; max-width:min(1140px,92vw); }
.lb.open .lb-frame { animation:lbpop .42s cubic-bezier(.2,.85,.25,1) both; }
@keyframes lbpop { from{ transform:scale(.93); opacity:0 } to{ transform:scale(1); opacity:1 } }
.lb-img { display:block; width:100%; max-height:86vh; object-fit:contain; border-radius:16px;
  border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));
  box-shadow:0 0 0 1px rgba(var(--glow),.22), 0 50px 130px -24px rgba(0,0,0,.85), 0 0 90px -16px rgba(var(--glow),.4);
  animation:lbfloat 6s ease-in-out infinite; }
@keyframes lbfloat { 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-12px) } }
.lb-close { position:fixed; top:22px; right:26px; z-index:201; width:42px; height:42px; border-radius:50%;
  border:1px solid var(--line); background:color-mix(in srgb,var(--card) 72%,transparent); color:var(--text);
  font-size:17px; cursor:pointer; display:grid; place-items:center; transition:.2s; backdrop-filter:blur(8px); }
.lb-close:hover { border-color:var(--accent); color:var(--accent); transform:rotate(90deg); }
.lb-cap { margin:15px auto 0; max-width:600px; text-align:center; padding:0 16px; line-height:1.55;
  animation:lbcapin .5s .12s both cubic-bezier(.2,.85,.25,1); }
.lb-cap-eye { display:none; }
.lb-cap b { color:var(--text); font-weight:500; font-size:13.5px; letter-spacing:.2px; }
.lb-cap b::after { content:'  —  '; color:var(--muted-2); font-weight:300; white-space:pre; }
.lb-cap span#lbCapText { color:var(--muted-2); font-size:13.5px; font-weight:300; }
@keyframes lbcapin { from{ opacity:0; transform:translateY(10px) } to{ opacity:1; transform:translateY(0) } }

/* ---------- ESTUDO E MOMENTO (Atenção Imediata) ---------- */
.now-sec { background:linear-gradient(180deg,var(--bg),var(--bg-deep) 50%,var(--bg)); }
.now-stack { display:grid; gap:26px; max-width:1040px; margin:0 auto; }
.panel.wide { cursor:zoom-in; }
.panel.wide img { width:100%; height:auto; }

/* ---------- PROVA REAL ---------- */
.proof { position:relative; z-index:2; padding:30px 0 10px; }
.proof-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; padding:36px 40px;
  border:1px solid var(--line-soft); border-radius:var(--radius); background:var(--bg-2); }
.proof-item b { display:block; font-size:38px; font-weight:300; letter-spacing:-1.2px; line-height:1.08;
  background:linear-gradient(92deg,var(--accent),var(--accent-2)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.proof-item span { display:block; margin-top:9px; font-size:13px; line-height:1.5; color:var(--muted); font-weight:300; max-width:260px; }
.proof-note { grid-column:1/-1; margin-top:8px; padding-top:20px; border-top:1px solid var(--line-soft);
  text-align:center; font-size:12.5px; color:var(--muted-2); font-weight:300; }
.proof-note .spark { color:var(--accent); margin-right:6px; }
.proof-note b { color:var(--muted); font-weight:500; }

/* ---------- CAOS → CLAREZA ---------- */
.clash { display:grid; grid-template-columns:1fr auto 1fr; gap:24px; align-items:stretch; max-width:1020px; margin:0 auto; }
.clash-col { border:1px solid var(--line); border-radius:var(--radius); padding:28px 30px; background:var(--card); }
.clash-col.before { background:var(--bg-2); border-style:dashed; }
.clash-col.after { border-color:color-mix(in srgb,var(--accent) 50%,var(--line));
  background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 7%,var(--card)),var(--card));
  box-shadow:0 0 0 1px rgba(var(--glow),.1), 0 30px 70px -34px rgba(var(--glow),.3); }
.clash-tag { font-size:11px; letter-spacing:1.8px; text-transform:uppercase; font-weight:600; color:var(--muted-2); }
.clash-col.after .clash-tag { color:var(--accent); }
.clash-col ul { list-style:none; margin-top:16px; display:flex; flex-direction:column; gap:13px; }
.clash-col li { font-size:14px; line-height:1.55; color:var(--muted); font-weight:300; display:flex; gap:10px; }
.clash-col li::before { font-weight:700; font-size:12px; margin-top:2px; flex:none; }
.clash-col.before li::before { content:'✕'; color:var(--warn); }
.clash-col.after li { color:var(--text); }
.clash-col.after li::before { content:'✓'; color:var(--accent-2); }
.clash-arrow { align-self:center; color:var(--accent); font-size:24px; opacity:.7; }

/* ---------- OS TRÊS MOTORES ---------- */
.engines-sec { background:linear-gradient(180deg,var(--bg),var(--bg-deep) 50%,var(--bg)); }
.engine { display:grid; grid-template-columns:1.05fr .95fr; gap:52px; align-items:center; max-width:1020px; margin:0 auto 60px; }
.engine:last-child { margin-bottom:0; }
.engine.rev .engine-text { order:2; } .engine.rev .engine-visual { order:1; }
.engine-num { font-size:11.5px; letter-spacing:2.2px; text-transform:uppercase; font-weight:600; color:var(--accent); }
.engine-text h3 { font-size:23px; font-weight:500; letter-spacing:-.4px; color:var(--text-strong); margin:12px 0 14px; line-height:1.28; }
.engine-text p { font-size:15px; line-height:1.65; color:var(--muted); font-weight:300; }
.engine-visual { border:1px solid var(--line); border-radius:var(--radius); background:var(--card); padding:28px 30px; box-shadow:var(--shadow-sm); }
.vis-label { display:block; font-size:11.5px; letter-spacing:1.6px; text-transform:uppercase; color:var(--muted-2); font-weight:600; margin-bottom:16px; }
.engine-stat { margin-top:20px; padding-top:16px; border-top:1px solid var(--line-soft); font-size:12.5px; color:var(--muted-2); font-weight:300; }
.engine-stat b { color:var(--accent); font-weight:600; }
.chips { display:flex; flex-wrap:wrap; gap:10px; }
.chip { font-size:13px; font-weight:500; padding:9px 16px; border-radius:100px; border:1px solid var(--line);
  background:var(--bg-soft); color:var(--text); display:inline-flex; align-items:center; gap:8px; transition:.22s; }
.chip:hover { transform:translateY(-2px); border-color:color-mix(in srgb,var(--accent) 40%,var(--line)); box-shadow:var(--shadow-sm); }
.chip::before { content:''; width:8px; height:8px; border-radius:50%; flex:none; }
.c-crit::before { background:#ef4444; } .c-cron::before { background:#f97316; } .c-inter::before { background:#f59e0b; }
.c-flap::before { background:#22d3ee; } .c-ruid::before { background:#9ca3af; }
.margin-card .mc-big { font-size:62px; font-weight:300; letter-spacing:-2px; color:var(--text-strong); line-height:1.1; margin:6px 0 16px; }
.margin-card .mc-big em { font-style:normal; font-size:22px; font-weight:400; color:var(--accent); letter-spacing:0; }
.margin-card .mc-bar { height:9px; border-radius:6px; background:var(--bg-soft); border:1px solid var(--line-soft); overflow:hidden; }
.margin-card .mc-bar i { display:block; height:100%; background:linear-gradient(90deg,var(--accent),var(--accent-2)); border-radius:6px; transform-origin:left; }
.margin-card .mc-foot { display:block; margin-top:12px; font-size:12.5px; color:var(--muted); font-weight:300; }
.cal-strip { display:grid; grid-template-columns:repeat(7,1fr); gap:7px; }
.cal-strip i { aspect-ratio:1.4; border-radius:6px; background:color-mix(in srgb,#10b981 50%,var(--card)); }
.cal-strip i.y { background:color-mix(in srgb,#f59e0b 60%,var(--card)); }
.cal-strip i.r { background:color-mix(in srgb,#ef4444 60%,var(--card)); }

/* ---------- DOIS CAMINHOS ---------- */
.paths { display:grid; grid-template-columns:1fr 1fr; gap:24px; max-width:920px; margin:0 auto; }
.path { border:1px solid var(--line); border-radius:var(--radius); background:var(--card); padding:34px 32px;
  display:flex; flex-direction:column; align-items:flex-start; gap:14px; }
.path.now { border-color:color-mix(in srgb,var(--accent) 52%,var(--line));
  background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 8%,var(--card)),var(--card));
  box-shadow:0 0 0 1px rgba(var(--glow),.12), 0 34px 80px -36px rgba(var(--glow),.35); }
.path.soon { border-style:dashed; }
.path-tag { font-size:11px; letter-spacing:1.8px; text-transform:uppercase; font-weight:600; color:var(--muted-2); }
.path.now .path-tag { color:var(--accent); }
.path h3 { font-size:24px; font-weight:700; color:var(--text-strong); letter-spacing:-.3px; }
.path p { font-size:14.5px; line-height:1.6; color:var(--muted); font-weight:300; flex:1; }
.wait-form { display:flex; gap:10px; width:100%; }
.wait-form input { flex:1; min-width:0; font-family:inherit; font-size:14px; color:var(--text);
  background:var(--bg-soft); border:1px solid var(--line); border-radius:10px; padding:11px 13px; transition:.2s; }
.wait-form input::placeholder { color:var(--muted-2); }
.wait-form input:focus { outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(var(--glow),.12); }

/* ---------- FAQ ---------- */
.faq-sec { background:linear-gradient(180deg,var(--bg),var(--bg-deep) 50%,var(--bg)); }
.faq-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:60px; align-items:start; }
.faq-intro { position:sticky; top:104px; }
.faq-intro h2 { font-size:34px; }
.faq-intro p { margin-top:14px; font-size:15.5px; line-height:1.6; color:var(--muted); font-weight:300; }
.faq-contact { margin-top:28px; border:1px solid var(--line); border-radius:var(--radius-md); background:var(--card);
  padding:18px 20px; display:flex; flex-direction:column; gap:4px; transition:.25s; }
.faq-contact:hover { border-color:color-mix(in srgb,var(--accent) 40%,var(--line)); box-shadow:var(--shadow-sm); }
.faq-contact span { font-size:12.5px; color:var(--muted-2); }
.faq-contact a { font-size:14.5px; font-weight:600; color:var(--accent); }
.faq { display:flex; flex-direction:column; gap:12px; counter-reset:faq; }
.faq details { border:1px solid var(--line); border-radius:var(--radius-md); background:var(--card); transition:border-color .25s, background .25s; }
.faq details:hover { border-color:color-mix(in srgb,var(--accent) 28%,var(--line)); }
.faq details[open] { border-color:color-mix(in srgb,var(--accent) 42%,var(--line));
  background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,var(--card)),var(--card)); }
.faq summary { list-style:none; cursor:pointer; display:flex; align-items:center; gap:14px;
  padding:19px 22px; font-size:15.5px; font-weight:500; color:var(--text); }
.faq summary::-webkit-details-marker { display:none; }
.faq summary::before { counter-increment:faq; content:counter(faq, decimal-leading-zero); flex:none; width:26px;
  font-size:12px; font-weight:600; letter-spacing:.5px; color:var(--accent); opacity:.85; }
.faq summary::after { content:'+'; margin-left:auto; font-size:21px; font-weight:300; color:var(--accent); transition:transform .25s; flex:none; }
.faq details[open] summary::after { transform:rotate(45deg); }
.faq details p { padding:0 22px 20px 62px; font-size:14px; line-height:1.65; color:var(--muted); font-weight:300; }
.faq details[open] p { animation:faqin .35s ease both; }
@keyframes faqin { from { opacity:0; transform:translateY(-4px); } to { opacity:1; transform:none; } }
.faq details a { color:var(--accent); }

/* ---------- FORM STATUS / MAIL ---------- */
.form-status { display:none; font-size:13px; line-height:1.5; margin:0; }
.form-status.ok { display:block; color:var(--accent-2); }
.form-status.err { display:block; color:var(--warn); }
.form-status a { color:var(--accent); text-decoration:underline; }
.mail-link { color:var(--accent); }

/* ---------- RESPONSIVE ---------- */
@media (max-width:980px) {
  h2 { font-size:30px; } .hero-copy h1 { font-size:38px; }
  .hero-grid { grid-template-columns:1fr; gap:44px; } .monitor { transform:none; }
  .nav-links { display:none; }
  .grid-4 { grid-template-columns:1fr 1fr; } .grid-3 { grid-template-columns:1fr; }
  .flow { flex-direction:column; align-items:stretch; } .flow-arrow { transform:rotate(90deg); } .flow-col.center{ max-width:none; }
  .flow2 { flex-direction:column; } .flow2-arrow { transform:rotate(90deg); margin-top:0; } .flow2-step { min-height:0; }
  .proof-grid { grid-template-columns:1fr; gap:26px; padding:30px 28px; } .proof-item span { max-width:none; }
  .clash { grid-template-columns:1fr; } .clash-arrow { transform:rotate(90deg); justify-self:center; }
  .engine, .engine.rev { grid-template-columns:1fr; gap:24px; }
  .engine.rev .engine-text { order:1; } .engine.rev .engine-visual { order:2; }
  .paths { grid-template-columns:1fr; }
  .faq-grid { grid-template-columns:1fr; gap:34px; } .faq-intro { position:static; }
  .shot-row, .shot-row.rev { grid-template-columns:1fr; gap:24px; } .shot-row.rev .shot-text{ order:1 } .shot-row.rev .panel{ order:2 }
  .deliver .deliv { flex:0 1 calc(50% - 11px); }
  .cta-grid { grid-template-columns:1fr; gap:34px; } .band { padding:40px 24px; }
}
@media (max-width:560px) { .grid-4 { grid-template-columns:1fr; } .deliver .deliv { flex:0 1 100%; } .foot-inner span:last-child{ margin-left:0; } .wait-form { flex-direction:column; } }

/* ==================== v20 — modernização (Issue #1) ==================== */
.h1-line { display:inline-block; }
.kicker { display:inline-flex; align-items:center; gap:10px; font-size:12.5px; font-weight:650; letter-spacing:2.6px;
  text-transform:uppercase; color:var(--accent); padding:9px 18px; border-radius:100px;
  border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));
  background:linear-gradient(180deg, rgba(var(--glow),.12), rgba(var(--glow),.05)); }
.kicker i { width:7px; height:7px; border-radius:50%; background:var(--accent); box-shadow:0 0 12px var(--accent); animation:kpulse 2.2s ease-in-out infinite; }
@keyframes kpulse { 0%,100%{ opacity:1; transform:scale(1) } 50%{ opacity:.45; transform:scale(.72) } }

/* nav compacta ao rolar */
.nav { transition:background .3s, box-shadow .3s; }
.nav-inner { transition:height .3s; }
.nav.scrolled { background:color-mix(in srgb, var(--bg) 90%, transparent); box-shadow:0 12px 40px -18px rgba(0,0,0,.5); }
.nav.scrolled .nav-inner { height:62px; }

/* banda de CTA intermediária */
.cta-band { position:relative; z-index:2; padding:10px 0 30px; }
.band-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap;
  padding:36px 42px; border-radius:22px; border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));
  background:radial-gradient(700px 300px at 18% 0%, rgba(var(--glow),.13), transparent 60%), linear-gradient(180deg,var(--card),var(--bg-2));
  box-shadow:var(--shadow-soft); }
.band-inner h3 { font-size:23px; font-weight:600; letter-spacing:-.4px; color:var(--text-strong); }
.band-inner p { margin-top:6px; font-size:14.5px; color:var(--muted); font-weight:300; }
.band-inner p strong { color:var(--text); font-weight:500; }
@media (max-width:560px){ .band-inner { padding:28px 24px; } .band-inner .btn { width:100%; } }

/* no mobile o CTA do header não cabe — a barra fixa inferior assume */
@media (max-width:720px){ .nav .btn-primary { display:none; } }

/* CTA fixo mobile */
.m-cta { position:fixed; left:0; right:0; bottom:0; z-index:90; padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  background:color-mix(in srgb, var(--bg) 88%, transparent); backdrop-filter:blur(14px);
  border-top:1px solid var(--line-soft); transform:translateY(110%); visibility:hidden;
  transition:transform .35s cubic-bezier(.2,.7,.2,1), visibility .35s; }
.m-cta.show { transform:none; visibility:visible; }
@media (min-width:721px){ .m-cta { display:none; } }

/* wow do hero: sonar (varredura) atrás do laptop + scan de leitura na tela (motion.js liga; sem JS, invisível) */
.sonar { position:absolute; left:50%; top:44%; width:740px; height:740px; transform:translate(-50%,-50%);
  z-index:1; opacity:0; pointer-events:none; }
.sonar i { position:absolute; inset:0; border:1px solid rgba(var(--glow),.4); border-radius:50%; opacity:0; }
.sonar .beam { position:absolute; inset:0; border-radius:50%;
  background:conic-gradient(from 0deg, rgba(var(--glow),.20), rgba(var(--glow),.04) 46deg, transparent 72deg);
  -webkit-mask-image:radial-gradient(closest-side, transparent 16%, #000 17%, #000 76%, transparent 79%);
          mask-image:radial-gradient(closest-side, transparent 16%, #000 17%, #000 76%, transparent 79%); }
.blip { position:absolute; width:9px; height:9px; border-radius:50%; background:var(--accent);
  box-shadow:0 0 16px 2px rgba(var(--glow),.8); opacity:0; }
.blip.b1 { left:16%; top:30%; } .blip.b2 { left:78%; top:22%; } .blip.b5 { left:55%; top:12%; }
.blip.b3 { left:86%; top:58%; background:var(--warn); box-shadow:0 0 16px 2px rgba(245,177,74,.7); }
.blip.b4 { left:10%; top:66%; background:var(--danger); box-shadow:0 0 16px 2px rgba(255,118,118,.7); }
.scanline { position:absolute; left:9%; right:9%; top:4%; height:3px; border-radius:3px; z-index:3; opacity:0;
  background:linear-gradient(90deg, transparent, rgba(var(--glow),.9), transparent);
  box-shadow:0 0 20px 4px rgba(var(--glow),.35); pointer-events:none; }
@media (max-width:980px){ .sonar { width:115vw; height:115vw; } }

/* seletor de idiomas — pílula de bandeiras (espelha o LanguagePickerLogin do Argos) */
.lang-pill { display:inline-flex; align-items:center; gap:5px; padding:4px; border-radius:999px;
  border:1px solid var(--line); background:color-mix(in srgb, var(--card) 70%, transparent); }
.lang-pill a, .lang-pill > span { width:30px; height:30px; border-radius:50%; display:inline-flex;
  align-items:center; justify-content:center; opacity:.5; transition:opacity .2s, background .2s; }
.lang-pill a:hover { opacity:.95; }
.lang-pill .on { opacity:1; background:rgba(var(--glow),.14); box-shadow:0 0 0 2px var(--accent); }
.lang-pill img { width:21px; height:21px; border-radius:50%; object-fit:cover; display:block;
  box-shadow:0 0 0 1px rgba(0,0,0,.25); }
@media (max-width:720px){
  .lang-pill a, .lang-pill > span { width:26px; height:26px; }
  .lang-pill img { width:18px; height:18px; }
  .nav .logo { width:112px; }
}

/* pills de interesse no form */
.int-pills { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.int-pills label { position:relative; }
.int-pills input { position:absolute; opacity:0; pointer-events:none; }
.int-pills span { display:flex; align-items:center; justify-content:center; gap:8px; text-align:center;
  font-size:13px; font-weight:550; color:var(--muted); padding:11px 10px; border-radius:11px; cursor:pointer;
  border:1px solid var(--line); background:var(--bg-soft); transition:.2s; }
.int-pills input:checked + span { color:var(--accent); border-color:color-mix(in srgb,var(--accent) 55%,var(--line));
  background:rgba(var(--glow),.09); box-shadow:0 0 0 3px rgba(var(--glow),.08); }
.int-pills span:hover { border-color:color-mix(in srgb,var(--accent) 40%,var(--line)); }
