/* ==============================================================
   JURIS 8 · IA JURÍDICA COMPLETA — stylesheet
   Reaproveita os tokens e componentes do design system Juris8
   (index.html / julia.html / crm.html / trabalhista.html)
============================================================== */

/* ==============================
   DESIGN TOKENS
============================== */
:root {
  --juris-50:#F4EEFF;--juris-100:#E6D9FF;--juris-200:#CFB4FF;
  --juris-300:#B388FB;--juris-400:#9A63F0;--juris-500:#7C3AED;
  --juris-600:#6324C9;--juris-700:#4C1A9E;--juris-800:#361074;
  --juris-900:#200A4D;--juris-950:#130530;
  --ink-50:#F6F4FB;--ink-100:#ECE9F5;--ink-200:#D5D1E6;
  --ink-300:#ADA7C7;--ink-400:#807AA0;--ink-500:#5B557A;
  --ink-600:#3F3A5C;--ink-700:#2A2645;--ink-800:#1A1730;
  --ink-900:#110E22;--ink-950:#07050F;
  --ok:#4ADE80;--warn:#F5B454;--bad:#FB7185;--info:#7DD3FC;
  --bg:var(--ink-950);
  --surface-1:#0D0B1C;--surface-2:#14112A;--surface-3:#1B1738;
  --hairline:rgba(255,255,255,0.06);
  --hairline-strong:rgba(255,255,255,0.11);
  --text:#EDEAF7;--muted:#9C95BD;--dim:#6E6890;
  --grad-brand:linear-gradient(135deg,#241052 0%,#5528B8 54%,#8F6CE6 100%);
  --glow:0 0 0 1px rgba(124,58,237,0.22),0 18px 48px -28px rgba(124,58,237,0.34);
  --r-2:4px;--r-3:8px;--r-4:12px;--r-5:16px;--r-6:20px;--r-7:28px;
  --font-display:'Instrument Serif','Times New Roman',serif;
  --font-sans:'Geist',system-ui,sans-serif;
  --font-mono:'Geist Mono',ui-monospace,monospace;
}

/* ==============================
   BASE
============================== */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
html,body{margin:0;padding:0;}
body{
  background:var(--bg);color:var(--text);
  font-family:var(--font-sans);font-weight:400;font-size:15px;
  line-height:1.55;letter-spacing:-0.005em;
  -webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;
  overflow-x:hidden;
}
::selection{background:var(--juris-500);color:white;}

body::before{
  content:'';position:fixed;inset:0;
  background:
    radial-gradient(900px 600px at 82% -8%,rgba(124,58,237,0.085),transparent 64%),
    radial-gradient(700px 500px at -8% 35%,rgba(76,26,158,0.055),transparent 70%),
    radial-gradient(800px 800px at 50% 110%,rgba(183,136,255,0.028),transparent 74%);
  pointer-events:none;z-index:0;
}
body::after{
  content:'';position:fixed;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,0.014) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,0.014) 1px,transparent 1px);
  background-size:72px 72px;background-position:-1px -1px;
  pointer-events:none;z-index:0;
  mask-image:radial-gradient(ellipse at 50% 30%,black 30%,transparent 78%);
}
.orb{position:fixed;border-radius:50%;pointer-events:none;z-index:0;filter:blur(130px);}
.orb-1{width:580px;height:580px;top:-200px;right:-180px;background:radial-gradient(circle,rgba(124,58,237,0.055) 0%,transparent 72%);}
.orb-2{width:440px;height:440px;bottom:120px;left:-180px;background:radial-gradient(circle,rgba(76,26,158,0.045) 0%,transparent 72%);}

/* ==============================
   LAYOUT
============================== */
.shell{position:relative;z-index:1;width:min(100%,1400px);margin:0 auto;padding:0 clamp(20px,5vw,72px);}
section{padding:clamp(64px,7vw,104px) 0;border-bottom:1px solid var(--hairline);}
section:last-of-type{border-bottom:none;}

/* ==============================
   ANIMATIONS
============================== */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
@keyframes pulse-dot{0%,100%{opacity:1;}50%{opacity:0.35;}}
@keyframes mk-spin{to{transform:rotate(360deg);}}
@keyframes blink-cursor{0%,100%{opacity:1;}50%{opacity:0;}}

.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.6s ease,transform 0.6s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
.d1{transition-delay:0.08s;}.d2{transition-delay:0.16s;}.d3{transition-delay:0.24s;}.d4{transition-delay:0.32s;}.d5{transition-delay:0.40s;}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
}

/* ==============================
   NAVBAR
============================== */
.navbar{
  position:sticky;top:0;z-index:100;
  background:rgba(7,5,15,0.85);
  backdrop-filter:blur(24px) saturate(1.4);
  border-bottom:1px solid var(--hairline);
}
.navbar-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:68px;padding:0 clamp(16px,2.5vw,40px);}
.nav-brand{display:flex;align-items:center;gap:10px;text-decoration:none;transition:opacity 0.2s;}
.nav-brand:hover{opacity:0.8;}
.nav-logo{height:54px;width:auto;display:block;}
.nav-links{display:flex;align-items:center;gap:2px;}
.nav-link{font-size:17px;color:var(--ink-400);text-decoration:none;padding:6px 11px;border-radius:7px;transition:0.15s ease;letter-spacing:-0.01em;}
.nav-link:hover{color:var(--text);background:rgba(255,255,255,0.05);}
.nav-right{display:flex;align-items:center;gap:8px;}
.nav-ghost{font-size:13px;color:var(--ink-300);text-decoration:none;padding:6px 14px;border-radius:7px;transition:0.15s ease;}
.nav-ghost:hover{color:var(--text);background:rgba(255,255,255,0.05);}
.nav-cta{
  font-family:var(--font-sans);font-weight:500;font-size:13px;letter-spacing:-0.01em;
  padding:8px 18px;border-radius:9px;border:none;cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
  background:linear-gradient(180deg,#7849DE 0%,#5C2BBA 100%);color:white;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.14),0 6px 16px -8px rgba(124,58,237,0.5);
  transition:all 0.2s ease;
}
.nav-cta:hover{filter:brightness(1.08);transform:translateY(-1px);}
.nav-cta svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}

/* hamburger + mobile menu */
.nav-burger{
  display:none;width:38px;height:38px;flex-shrink:0;cursor:pointer;
  flex-direction:column;align-items:center;justify-content:center;gap:5px;
  background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:9px;
  transition:border-color 0.18s ease;
}
.nav-burger span{display:block;width:17px;height:1.8px;border-radius:2px;background:var(--text);transition:transform 0.25s ease,opacity 0.2s ease;}
.nav-burger[aria-expanded="true"]{border-color:rgba(124,58,237,0.4);}
.nav-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.8px) rotate(45deg);}
.nav-burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.8px) rotate(-45deg);}
.nav-mobile{
  display:none;flex-direction:column;gap:2px;overflow:hidden;
  max-height:0;opacity:0;
  border-top:1px solid transparent;
  padding:0 clamp(16px,5vw,40px);
  background:rgba(7,5,15,0.96);backdrop-filter:blur(24px) saturate(1.4);
  transition:max-height 0.32s ease,opacity 0.28s ease,padding 0.32s ease,border-color 0.32s ease;
}
.nav-mobile.open{max-height:420px;opacity:1;padding:8px clamp(16px,5vw,40px) 18px;border-top-color:var(--hairline);}
.nav-mobile-link{
  font-size:15px;color:var(--ink-200);text-decoration:none;padding:13px 4px;
  border-bottom:1px solid var(--hairline);transition:color 0.15s ease;
}
.nav-mobile-link:hover{color:var(--text);}
.nav-mobile-actions{display:flex;gap:10px;margin-top:14px;}
.nav-mobile-actions .btn{flex:1;justify-content:center;}

/* ==============================
   BUTTONS
============================== */
.btn{
  font-family:var(--font-sans);font-weight:500;font-size:14px;
  padding:12px 22px;border-radius:10px;border:1px solid transparent;
  cursor:pointer;display:inline-flex;align-items:center;gap:8px;
  letter-spacing:-0.005em;transition:all 0.2s ease;text-decoration:none;white-space:nowrap;
}
.btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.btn.primary{
  background:linear-gradient(180deg,#7849DE 0%,#5C2BBA 100%);color:white;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.16),0 1px 2px rgba(0,0,0,0.4),0 8px 18px -10px rgba(124,58,237,0.45);
}
.btn.primary:hover{filter:brightness(1.07);transform:translateY(-1px);}
.btn.secondary{background:var(--surface-3);color:var(--text);border-color:var(--hairline-strong);}
.btn.secondary:hover{background:var(--surface-2);transform:translateY(-1px);border-color:rgba(179,136,251,0.25);}
.btn.lg{font-size:15px;padding:14px 28px;}
.btn-group{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}

/* ==============================
   EYEBROW / BADGES / HEADERS
============================== */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--font-mono);font-size:11px;text-transform:uppercase;
  letter-spacing:0.14em;color:var(--juris-300);
}
.eyebrow::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--juris-300);flex-shrink:0;}

h1,h2,h3,h4{font-family:var(--font-sans);font-weight:500;letter-spacing:-0.02em;margin:0;}
h3{font-size:22px;line-height:1.25;}
p{margin:0;color:var(--ink-200);}

.sec-header{text-align:center;max-width:62ch;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:14px;}
.sec-h2{font-size:clamp(28px,3.7vw,46px);line-height:1.08;letter-spacing:-0.025em;color:var(--text);margin:0;}
.sec-lede{font-size:clamp(14px,1.6vw,16px);color:var(--ink-400);line-height:1.7;max-width:56ch;}
.grad{
  background:linear-gradient(135deg,#C4A0FF 0%,#7C3AED 60%,#B788FF 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

.hero-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.hero-chip{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:0.12em;
  color:var(--muted);padding:5px 11px;border-radius:5px;
  background:var(--surface-2);border:1px solid var(--hairline-strong);
}
.hero-chip .hc-dot{width:4px;height:4px;border-radius:50%;background:var(--juris-400);flex-shrink:0;animation:pulse-dot 2s ease infinite;}

/* ==============================
   HERO
============================== */
.hero-section{
  padding:clamp(56px,6vw,88px) 0 clamp(56px,6vw,88px);
  position:relative;overflow:hidden;border-bottom:1px solid var(--hairline);
}
.hero-grid{display:grid;grid-template-columns:1fr 1.04fr;gap:clamp(36px,5vw,72px);align-items:center;}
.hero-content{display:flex;flex-direction:column;gap:24px;max-width:560px;}
.hero-h1{
  font-size:clamp(34px,4.6vw,58px);line-height:1.07;letter-spacing:-0.03em;font-weight:700;margin:0;
  color:var(--text);
}
.hero-h1 .accent{
  font-style:normal;font-weight:700;
  background:linear-gradient(135deg,#C4A0FF 0%,#7C3AED 60%,#B788FF 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-sub{font-size:clamp(16px,1.6vw,18.5px);color:var(--muted);line-height:1.65;max-width:54ch;}
.hero-trust{display:flex;flex-direction:column;gap:9px;margin-top:2px;}
.hero-trust-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);}
.hero-trust-item svg{width:13px;height:13px;flex-shrink:0;fill:none;stroke:var(--ok);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.hero-microcopy{
  font-size:13px;color:var(--ink-300);line-height:1.6;
  border-left:2px solid rgba(124,58,237,0.5);padding:2px 0 2px 14px;
}
.hero-microcopy b{color:var(--text);font-weight:500;}

/* ==============================
   MOCK WINDOW (shared shell)
============================== */
.mock{
  background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:16px;overflow:hidden;
  box-shadow:0 34px 80px -40px rgba(0,0,0,0.85),0 0 0 1px rgba(124,58,237,0.05);
  transition:transform 0.3s ease,box-shadow 0.3s ease;
}
.mock-bar{display:flex;align-items:center;gap:9px;padding:11px 14px;border-bottom:1px solid var(--hairline);background:var(--surface-2);position:relative;}
.mock-dots{display:flex;gap:5px;}
.mock-dots i{width:8px;height:8px;border-radius:50%;background:var(--hairline-strong);display:block;}
.mock-bar-title{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted);margin-left:4px;}
.mock-bar-crumb{display:flex;align-items:center;gap:7px;margin-left:6px;min-width:0;}
.crumb-app{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:0.1em;color:var(--dim);}
.crumb-sep{width:9px;height:9px;fill:none;stroke:var(--dim);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;opacity:0.6;}
.crumb-now{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:0.1em;color:var(--ink-200);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mock-bar-status{margin-left:auto;font-family:var(--font-mono);font-size:8.5px;letter-spacing:0.06em;color:var(--juris-300);background:rgba(124,58,237,0.12);border:1px solid rgba(124,58,237,0.22);border-radius:5px;padding:3px 9px;display:inline-flex;align-items:center;gap:5px;flex-shrink:0;}
.mock-bar-status .live-dot{width:5px;height:5px;border-radius:50%;background:var(--ok);animation:pulse-dot 1.6s ease infinite;}
.mock-progress{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:linear-gradient(90deg,transparent,var(--juris-400),var(--juris-200));border-radius:2px;opacity:0;transition:width 0.45s ease,opacity 0.3s ease;box-shadow:0 0 8px rgba(124,58,237,0.6);}
.mock-progress.on{opacity:1;}

/* ==============================
   HERO AGENT · workspace realista
============================== */
/* palco cinematográfico */
.hero-visual{position:relative;}
.hero-visual::before{
  content:'';position:absolute;z-index:0;
  left:50%;top:46%;transform:translate(-50%,-50%);
  width:118%;height:88%;border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(124,58,237,0.20),rgba(124,58,237,0.05) 45%,transparent 70%);
  filter:blur(46px);pointer-events:none;
  animation:stage-breathe 7s ease-in-out infinite;
}
.hero-visual::after{
  content:'';position:absolute;z-index:0;pointer-events:none;
  left:8%;right:8%;bottom:-6%;height:42px;border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(0,0,0,0.55),transparent 72%);
  filter:blur(14px);
}
@keyframes stage-breathe{0%,100%{opacity:0.75;}50%{opacity:1;}}
@media(prefers-reduced-motion:reduce){.hero-visual::before{animation:none;}}

.mock.agent{
  display:flex;flex-direction:column;max-height:none;position:relative;z-index:1;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.05) inset,
    0 2px 6px rgba(0,0,0,0.4),
    0 30px 60px -28px rgba(0,0,0,0.85),
    0 50px 100px -50px rgba(124,58,237,0.28);
  animation:mock-float 9s ease-in-out infinite;
}
@keyframes mock-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-7px);}}
@media(prefers-reduced-motion:reduce){.mock.agent{animation:none;}}
/* grão sutil */
.mock.agent::after{
  content:'';position:absolute;inset:0;z-index:40;pointer-events:none;border-radius:16px;
  opacity:0.45;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%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)' opacity='0.5'/%3E%3C/svg%3E");
}
.agent-cursor{display:inline-block;width:2px;height:1em;background:var(--juris-300);border-radius:1px;vertical-align:text-bottom;margin-left:1px;animation:blink-cursor 1s step-end infinite;}

/* fake mouse cursor */
.agent-cursorptr{
  position:absolute;top:0;left:0;width:22px;height:22px;z-index:30;
  pointer-events:none;opacity:0;
  transform:translate(40px,40px);
  transition:transform 0.55s cubic-bezier(0.45,0,0.15,1),opacity 0.3s ease;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,0.6));
}
.agent-cursorptr svg{width:22px;height:22px;fill:#fff;stroke:rgba(0,0,0,0.55);stroke-width:1;}
.agent-cursorptr.click{transform:translate(var(--cx,0),var(--cy,0)) scale(0.82);}
.agent-cursorptr.visible{opacity:1;}

/* chat scroll */
.agent-chat{
  display:flex;flex-direction:column;
  min-height:316px;max-height:316px;overflow-y:auto;overflow-x:hidden;
}
.agent-chat > *{flex-shrink:0;}
.agent-empty{flex-shrink:1;}
.agent-chat.on{}
.agent-chat::-webkit-scrollbar{width:5px;}
.agent-chat::-webkit-scrollbar-thumb{background:var(--hairline-strong);border-radius:3px;}

/* empty state */
.agent-empty{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;
  text-align:center;padding:24px;
  transition:opacity 0.3s ease;
}
.agent-empty.hide{opacity:0;}
.agent-empty-ic{
  width:46px;height:46px;border-radius:13px;
  background:rgba(124,58,237,0.1);border:1px solid rgba(124,58,237,0.24);
  display:flex;align-items:center;justify-content:center;margin-bottom:2px;
}
.agent-empty-ic svg{width:22px;height:22px;fill:var(--juris-300);stroke:none;}
.agent-empty-t{font-size:13px;color:var(--ink-200);font-weight:500;letter-spacing:-0.01em;}
.agent-empty-s{font-family:var(--font-mono);font-size:9.5px;color:var(--dim);letter-spacing:0.01em;}

/* prompt do advogado */
.agent-prompt{
  display:flex;align-items:flex-start;gap:10px;padding:14px 16px;
  border-bottom:1px solid var(--hairline);background:var(--surface-2);
  opacity:0;max-height:0;overflow:hidden;
  transition:opacity 0.35s ease,max-height 0.4s ease,padding 0.4s ease;
}
.agent-prompt.on{opacity:1;max-height:200px;}
.agent-ava{
  width:24px;height:24px;border-radius:7px;flex-shrink:0;
  background:var(--surface-3);border:1px solid var(--hairline-strong);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-mono);font-size:9px;font-weight:600;color:var(--muted);
}
.agent-prompt-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;}
.agent-prompt-head{display:flex;align-items:center;gap:8px;}
.agent-prompt-name{font-size:11px;font-weight:600;color:var(--text);letter-spacing:-0.01em;}
.agent-time{font-family:var(--font-mono);font-size:8px;color:var(--dim);letter-spacing:0.04em;}
.agent-prompt-txt{font-size:12.5px;line-height:1.5;color:var(--text);padding-top:3px;}
.agent-files{display:flex;flex-wrap:wrap;gap:6px;}
.agent-file{
  display:inline-flex;align-items:center;gap:5px;
  font-family:var(--font-mono);font-size:9px;color:var(--muted);letter-spacing:-0.01em;
  background:var(--surface-1);border:1px solid var(--hairline-strong);border-radius:6px;padding:4px 8px;
}
.agent-file svg{width:9px;height:9px;fill:none;stroke:var(--juris-300);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;}

/* resposta do assistente */
.agent-reply{
  display:flex;align-items:center;gap:8px;padding:12px 16px 10px;
  opacity:0;transform:translateY(4px);transition:opacity 0.4s ease,transform 0.4s ease;
}
.agent-reply.on{opacity:1;transform:translateY(0);}
.agent-bot-ava{
  width:22px;height:22px;border-radius:7px;flex-shrink:0;
  background:var(--grad-brand);box-shadow:0 0 0 1px rgba(124,58,237,0.35),0 0 14px -4px rgba(124,58,237,0.6);
  display:flex;align-items:center;justify-content:center;
}
.agent-bot-ava svg{width:12px;height:12px;fill:#fff;stroke:none;}
.agent-reply.thinking .agent-bot-ava{animation:bot-glow 1.6s ease infinite;}
@keyframes bot-glow{0%,100%{box-shadow:0 0 0 1px rgba(124,58,237,0.35),0 0 14px -4px rgba(124,58,237,0.6);}50%{box-shadow:0 0 0 1px rgba(124,58,237,0.55),0 0 20px -2px rgba(124,58,237,0.85);}}
.agent-bot-name{font-size:12px;font-weight:600;color:var(--text);letter-spacing:-0.01em;}
.agent-bot-model{
  font-family:var(--font-mono);font-size:8px;text-transform:uppercase;letter-spacing:0.08em;color:var(--juris-300);
  background:rgba(124,58,237,0.1);border:1px solid rgba(124,58,237,0.22);border-radius:5px;padding:2px 7px;
}
.agent-typing{display:inline-flex;align-items:center;gap:3px;margin-left:2px;}
.agent-typing i{width:4px;height:4px;border-radius:50%;background:var(--juris-300);display:block;animation:typing-bounce 1.2s ease infinite;}
.agent-typing i:nth-child(2){animation-delay:0.18s;}
.agent-typing i:nth-child(3){animation-delay:0.36s;}
.agent-reply-time{margin-left:auto;}
@keyframes typing-bounce{0%,60%,100%{opacity:0.3;transform:translateY(0);}30%{opacity:1;transform:translateY(-3px);}}

/* intro do assistente */
.agent-intro{
  margin:0 16px;max-height:0;overflow:hidden;opacity:0;
  transition:max-height 0.4s ease,opacity 0.4s ease,margin 0.4s ease;
}
.agent-intro.on{max-height:120px;opacity:1;margin:0 16px 12px;}
.agent-intro-txt{font-size:12px;line-height:1.6;color:var(--ink-200);}
.agent-intro .agent-cursor{height:0.95em;}

/* raciocínio */
.agent-think{
  margin:0 16px;max-height:0;overflow:hidden;opacity:0;
  border-left:2px solid rgba(124,58,237,0.4);
  transition:max-height 0.4s ease,opacity 0.4s ease,padding 0.4s ease,margin 0.4s ease;
}
.agent-think.on{max-height:120px;opacity:1;padding:2px 0 2px 12px;margin:0 16px 12px;}
.agent-think.done{opacity:0.5;}
.agent-think-label{
  display:block;font-family:var(--font-mono);font-size:8px;text-transform:uppercase;letter-spacing:0.1em;
  color:var(--juris-300);margin-bottom:4px;
}
.agent-think-row{display:flex;align-items:flex-start;}
.agent-think-txt{font-family:var(--font-mono);font-size:10.5px;line-height:1.55;color:var(--ink-300);letter-spacing:-0.01em;}
.agent-think .agent-cursor{height:0.95em;}

/* composer */
.agent-composer{
  position:relative;border-top:1px solid var(--hairline);
  background:var(--surface-2);padding:12px 14px;
}
.agent-comp-files{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:9px;}
.agent-comp-files:empty{display:none;}
.agent-comp-file{
  display:inline-flex;align-items:center;gap:5px;
  font-family:var(--font-mono);font-size:9px;color:var(--ink-200);letter-spacing:-0.01em;
  background:var(--surface-1);border:1px solid rgba(124,58,237,0.28);border-radius:6px;padding:4px 8px;
  animation:fadeUp 0.3s ease;
}
.agent-comp-file svg{width:9px;height:9px;fill:none;stroke:var(--juris-300);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}
.agent-comp-file .cf-x{width:8px;height:8px;opacity:0.5;stroke:var(--muted);margin-left:1px;}
.agent-comp-row{display:flex;align-items:center;gap:9px;}
.agent-attach,.agent-send{
  width:32px;height:32px;border-radius:9px;flex-shrink:0;cursor:pointer;
  display:flex;align-items:center;justify-content:center;border:1px solid var(--hairline-strong);
  background:var(--surface-1);transition:all 0.18s ease;
}
.agent-attach svg{width:15px;height:15px;fill:none;stroke:var(--muted);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.agent-attach.lit{border-color:rgba(124,58,237,0.4);background:rgba(124,58,237,0.1);}
.agent-attach.lit svg{stroke:var(--juris-300);}
.agent-send{background:linear-gradient(180deg,#7849DE 0%,#5C2BBA 100%);border-color:transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.14);}
.agent-send svg{width:15px;height:15px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.agent-send.lit{filter:brightness(1.12);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 0 16px -4px rgba(124,58,237,0.7);}
.agent-input{
  flex:1;min-width:0;min-height:32px;display:flex;align-items:center;
  padding:6px 12px;border-radius:9px;background:var(--surface-1);
  border:1px solid var(--hairline-strong);font-size:12px;color:var(--text);line-height:1.4;
  transition:border-color 0.2s ease;
}
.agent-input.focus{border-color:rgba(124,58,237,0.4);}
.agent-input #agent-input-txt:empty::before{content:'Descreva a peça que você precisa…';color:var(--dim);}
.agent-input .input-cursor{height:1em;display:none;}
.agent-input.focus .input-cursor{display:inline-block;}

/* file picker popover */
.agent-picker{
  position:absolute;left:14px;bottom:calc(100% - 6px);width:230px;z-index:25;
  background:var(--surface-3);border:1px solid var(--hairline-strong);border-radius:12px;
  padding:7px;box-shadow:0 20px 44px -20px rgba(0,0,0,0.85);
  opacity:0;transform:translateY(8px) scale(0.97);transform-origin:bottom left;pointer-events:none;
  transition:opacity 0.22s ease,transform 0.22s ease;
}
.agent-picker.on{opacity:1;transform:translateY(0) scale(1);}
.agent-picker-head{
  display:block;font-family:var(--font-mono);font-size:8px;text-transform:uppercase;letter-spacing:0.1em;
  color:var(--dim);padding:5px 8px 7px;
}
.agent-picker-item{
  display:flex;align-items:center;gap:9px;width:100%;text-align:left;cursor:pointer;
  padding:8px 9px;border-radius:8px;border:1px solid transparent;background:transparent;
  font-family:var(--font-mono);font-size:10px;color:var(--ink-200);letter-spacing:-0.01em;
  transition:background 0.15s ease;
}
.agent-picker-item:hover,.agent-picker-item.hover{background:var(--surface-2);}
.agent-picker-item.picked{background:rgba(124,58,237,0.1);border-color:rgba(124,58,237,0.25);}
.apk-ic{width:22px;height:22px;border-radius:6px;flex-shrink:0;background:var(--surface-1);border:1px solid var(--hairline);display:flex;align-items:center;justify-content:center;}
.apk-ic svg{width:11px;height:11px;fill:none;stroke:var(--juris-300);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;}
.apk-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.apk-check{width:16px;height:16px;border-radius:50%;flex-shrink:0;background:rgba(74,222,128,0.14);border:1px solid rgba(74,222,128,0.32);display:none;align-items:center;justify-content:center;}
.agent-picker-item.picked .apk-check{display:flex;}
.apk-check svg{width:8px;height:8px;stroke:var(--ok);stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round;}

/* tool calls */
.agent-tools{display:flex;flex-direction:column;gap:6px;padding:0 16px;max-height:0;overflow:hidden;opacity:0;border-bottom:1px solid transparent;transition:max-height 0.45s ease,opacity 0.4s ease,padding 0.4s ease,border-color 0.4s ease;}
.agent-tools.on{max-height:240px;opacity:1;padding:4px 16px 14px;border-bottom-color:var(--hairline);}
.agent-tool{
  display:flex;align-items:center;gap:10px;padding:8px 11px;border-radius:9px;
  border:1px solid var(--hairline);background:var(--surface-2);
  opacity:0;transform:translateY(5px);
  transition:opacity 0.35s ease,transform 0.35s ease,border-color 0.35s ease;
}
.agent-tool.on{opacity:1;transform:translateY(0);}
.agent-tool.on:not(.done){position:relative;overflow:hidden;}
.agent-tool.on:not(.done)::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(100deg,transparent 30%,rgba(124,58,237,0.12) 50%,transparent 70%);
  transform:translateX(-100%);animation:tool-sweep 1.3s ease-in-out infinite;
}
@keyframes tool-sweep{to{transform:translateX(100%);}}
.agent-tool.done{border-color:rgba(74,222,128,0.2);}
.agent-tool-ic{width:18px;height:18px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface-3);}
.agent-spin{width:12px;height:12px;border-radius:50%;border:2px solid rgba(124,58,237,0.25);border-top-color:var(--juris-300);animation:mk-spin 0.8s linear infinite;}
.agent-check{width:17px;height:17px;border-radius:50%;background:rgba(74,222,128,0.14);border:1px solid rgba(74,222,128,0.32);display:none;align-items:center;justify-content:center;}
.agent-check svg{width:9px;height:9px;stroke:var(--ok);stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.agent-tool.done .agent-spin{display:none;}
.agent-tool.done .agent-check{display:flex;}
.agent-tool-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;}
.agent-tool-txt{font-size:11.5px;color:var(--text);font-weight:500;line-height:1.25;}
.agent-tool-meta{font-family:var(--font-mono);font-size:8px;color:var(--dim);letter-spacing:0.02em;}
.agent-tool-result{font-family:var(--font-mono);font-size:8px;color:var(--ok);letter-spacing:0.01em;margin-top:2px;display:none;}
.agent-tool-result::before{content:'→ ';opacity:0.7;}
.agent-tool.done .agent-tool-result:not(:empty){display:block;}
.agent-tool-tag{
  font-family:var(--font-mono);font-size:7.5px;text-transform:uppercase;letter-spacing:0.08em;
  color:var(--juris-300);background:rgba(124,58,237,0.1);border:1px solid rgba(124,58,237,0.2);
  border-radius:5px;padding:3px 7px;white-space:nowrap;flex-shrink:0;
}
.agent-tool.done .agent-tool-tag{color:var(--ok);background:rgba(74,222,128,0.08);border-color:rgba(74,222,128,0.2);}

/* documento em redação */
.agent-doc{
  max-height:0;overflow:hidden;opacity:0;
  transition:max-height 0.5s ease,opacity 0.4s ease;
  border-bottom:1px solid var(--hairline);
}
.agent-doc.on{max-height:640px;opacity:1;}
.agent-doc-head{
  display:flex;align-items:center;gap:9px;padding:10px 16px;
  background:var(--surface-2);border-bottom:1px solid var(--hairline);
}
.agent-doc-ic{width:20px;height:20px;border-radius:6px;flex-shrink:0;background:rgba(124,58,237,0.12);border:1px solid rgba(124,58,237,0.24);display:flex;align-items:center;justify-content:center;}
.agent-doc-ic svg{width:11px;height:11px;stroke:var(--juris-300);stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.agent-doc-name{font-family:var(--font-mono);font-size:10px;color:var(--text);letter-spacing:-0.01em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.agent-doc-meta{font-family:var(--font-mono);font-size:8px;text-transform:uppercase;letter-spacing:0.08em;color:var(--juris-300);background:rgba(124,58,237,0.1);border:1px solid rgba(124,58,237,0.2);border-radius:5px;padding:3px 8px;flex-shrink:0;}
.agent-doc-body{
  padding:16px 18px;
  background:
    linear-gradient(var(--surface-1),var(--surface-1)),
    repeating-linear-gradient(transparent,transparent 27px,var(--hairline) 27px,var(--hairline) 28px);
}
.agent-doc-foot{display:flex;align-items:center;justify-content:space-between;padding:7px 14px;border-top:1px solid var(--hairline);background:var(--surface-2);}
.agent-doc-save{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:8px;text-transform:uppercase;letter-spacing:0.08em;color:var(--dim);}
.agent-doc-save .save-dot{width:5px;height:5px;border-radius:50%;background:var(--warn);transition:background 0.3s ease;}
.agent-doc.saved .agent-doc-save .save-dot{background:var(--ok);}
.agent-doc-pages{font-family:var(--font-mono);font-size:8px;text-transform:uppercase;letter-spacing:0.08em;color:var(--dim);}
.doc-line{margin:0 0 9px;line-height:1.55;}
.doc-line .doc-cursor{height:0.9em;}
.dl-h{font-size:10px;font-weight:600;color:var(--text);letter-spacing:0.02em;text-transform:uppercase;}
.dl-c{font-size:13px;font-weight:600;color:var(--juris-200);text-align:center;letter-spacing:0.04em;margin:4px 0 12px;}
.dl-h2{font-size:11px;font-weight:600;color:var(--juris-200);margin-top:13px;letter-spacing:0.01em;}
.dl-p{font-size:11px;color:var(--ink-300);line-height:1.7;text-align:justify;}

/* rodapé · pronto */
.agent-done{
  display:flex;flex-direction:column;gap:11px;padding:13px 14px;margin:12px 16px;
  border-radius:10px;background:rgba(124,58,237,0.08);border:1px solid rgba(124,58,237,0.25);
  opacity:0;transform:translateY(5px);max-height:0;overflow:hidden;
  transition:opacity 0.45s ease,transform 0.45s ease,max-height 0.45s ease,margin 0.45s ease,padding 0.45s ease;
}
.agent-done.on{opacity:1;transform:translateY(0);max-height:160px;}
.agent-done-row{display:flex;align-items:center;gap:11px;}
.agent-done-ic{width:30px;height:30px;border-radius:8px;flex-shrink:0;background:rgba(74,222,128,0.12);border:1px solid rgba(74,222,128,0.3);display:flex;align-items:center;justify-content:center;}
.agent-done-ic svg{width:15px;height:15px;stroke:var(--ok);stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.agent-done-main{flex:1;min-width:0;}
.agent-done-t{display:block;font-size:12px;color:var(--text);font-weight:500;}
.agent-done-s{display:block;font-size:10.5px;color:var(--muted);line-height:1.4;margin-top:2px;}
.agent-done-actions{display:flex;gap:7px;flex-wrap:wrap;}
.agent-act{
  display:inline-flex;align-items:center;gap:6px;cursor:pointer;
  font-family:var(--font-sans);font-size:10.5px;font-weight:500;letter-spacing:-0.01em;
  color:var(--ink-200);background:var(--surface-1);border:1px solid var(--hairline-strong);
  border-radius:8px;padding:7px 11px;transition:all 0.16s ease;
}
.agent-act:hover{border-color:rgba(124,58,237,0.3);color:var(--text);}
.agent-act svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.agent-act.primary{color:var(--juris-100);background:rgba(124,58,237,0.16);border-color:rgba(124,58,237,0.35);}
.agent-act.primary:hover{background:rgba(124,58,237,0.24);}
.agent-act.primary svg{stroke:var(--juris-200);}

/* peça selector pills */
.demo-pecas{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;padding:4px 16px 16px;}
.demo-peca{
  display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:9px;cursor:pointer;
  border:1px solid var(--hairline);background:var(--surface-2);
  font-size:11.5px;color:var(--muted);transition:all 0.18s ease;text-align:left;
  font-family:var(--font-sans);
}
.demo-peca:hover{border-color:rgba(124,58,237,0.3);color:var(--ink-200);}
.demo-peca.active{border-color:rgba(124,58,237,0.45);background:rgba(124,58,237,0.1);color:var(--juris-200);}
.demo-peca-ic{width:22px;height:22px;border-radius:6px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--surface-3);border:1px solid var(--hairline);}
.demo-peca.active .demo-peca-ic{background:rgba(124,58,237,0.18);border-color:rgba(124,58,237,0.3);}
.demo-peca-ic svg{width:12px;height:12px;fill:none;stroke:var(--muted);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.demo-peca.active .demo-peca-ic svg{stroke:var(--juris-300);}

/* ==============================
   TRUST STRIP (marquee)
============================== */
.trust-strip{padding:18px 0;background:var(--surface-1);border-bottom:1px solid var(--hairline);overflow:hidden;}
.trust-track{display:flex;align-items:center;gap:10px;width:max-content;animation:marquee 46s linear infinite;}
.trust-track:hover{animation-play-state:paused;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.trust-pill{
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:0.1em;
  color:var(--muted);padding:7px 14px;border-radius:6px;
  border:1px solid var(--hairline-strong);background:var(--surface-2);
  white-space:nowrap;flex-shrink:0;
}
.trust-pill svg{width:12px;height:12px;flex-shrink:0;opacity:0.75;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.trust-pill.hi{color:var(--juris-300);border-color:rgba(124,58,237,0.25);background:rgba(124,58,237,0.08);}
.trust-pill.green{color:var(--ok);border-color:rgba(74,222,128,0.22);background:rgba(74,222,128,0.06);}

/* ==============================
   PROBLEMA
============================== */
.prob-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:52px;}
.prob-card{
  background:var(--surface-1);border:1px solid var(--hairline-strong);
  border-radius:var(--r-6);padding:22px 20px;display:flex;flex-direction:column;gap:12px;
  transition:border-color 0.25s ease,transform 0.25s ease;
}
.prob-card:hover{border-color:rgba(124,58,237,0.22);transform:translateY(-2px);}
.prob-ic{
  width:40px;height:40px;border-radius:11px;flex-shrink:0;
  background:rgba(251,113,133,0.08);border:1px solid rgba(251,113,133,0.2);
  display:flex;align-items:center;justify-content:center;
}
.prob-ic svg{width:18px;height:18px;fill:none;stroke:var(--bad);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.prob-title{font-size:15px;font-weight:500;color:var(--text);}
.prob-desc{font-size:13px;color:var(--ink-400);line-height:1.65;}

/* ==============================
   FUNCIONALIDADES (4 cards)
============================== */
.feat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:52px;}
.feat-card{
  background:var(--surface-1);border:1px solid var(--hairline-strong);
  border-radius:var(--r-7);padding:28px 26px;
  display:flex;flex-direction:column;gap:16px;position:relative;overflow:hidden;
  transition:border-color 0.25s ease,box-shadow 0.25s ease,transform 0.25s ease;
}
.feat-card:hover{border-color:rgba(124,58,237,0.28);box-shadow:0 22px 48px -28px rgba(124,58,237,0.2);transform:translateY(-3px);}
.feat-card::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(circle at 15% 0%,rgba(124,58,237,0.05),transparent 55%);pointer-events:none;
}
.feat-head{display:flex;align-items:center;gap:14px;}
.feat-ic{
  width:48px;height:48px;border-radius:13px;flex-shrink:0;
  background:rgba(124,58,237,0.1);border:1px solid rgba(124,58,237,0.22);
  display:flex;align-items:center;justify-content:center;
}
.feat-ic svg{width:22px;height:22px;fill:none;stroke:var(--juris-300);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.feat-num{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:0.14em;color:var(--dim);margin-bottom:4px;}
.feat-title{font-size:18px;font-weight:500;color:var(--text);letter-spacing:-0.02em;line-height:1.2;}
.feat-desc{font-size:13.5px;color:var(--ink-400);line-height:1.7;flex:1;}
.feat-desc b{color:var(--ink-200);font-weight:500;}
.feat-example{
  font-size:11.5px;line-height:1.5;color:var(--ink-300);
  background:var(--surface-2);border:1px solid var(--hairline);
  border-left:2px solid rgba(124,58,237,0.45);border-radius:8px;padding:10px 12px;
}
.feat-example .ex-label{
  font-family:var(--font-mono);font-size:8px;text-transform:uppercase;letter-spacing:0.08em;
  color:var(--juris-300);display:block;margin-bottom:5px;
}

/* ==============================
   ANTES / DEPOIS
============================== */
.ba-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:52px;}
.ba-col{
  border-radius:var(--r-7);padding:28px 26px;border:1px solid var(--hairline-strong);
  background:var(--surface-1);display:flex;flex-direction:column;gap:6px;
}
.ba-col.with{border-color:rgba(124,58,237,0.35);background:rgba(124,58,237,0.04);box-shadow:0 0 0 1px rgba(124,58,237,0.08),0 24px 56px -30px rgba(124,58,237,0.2);}
.ba-tag{
  font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:0.1em;
  display:inline-flex;align-items:center;gap:8px;margin-bottom:8px;
}
.ba-tag.without{color:var(--bad);}
.ba-tag.withj{color:var(--juris-300);}
.ba-tag .t-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;}
.ba-h{font-size:18px;font-weight:500;color:var(--text);margin-bottom:14px;letter-spacing:-0.02em;}
.ba-list{display:flex;flex-direction:column;gap:11px;}
.ba-item{display:flex;align-items:flex-start;gap:11px;font-size:13.5px;color:var(--ink-300);line-height:1.5;}
.ba-mark{width:18px;height:18px;border-radius:50%;flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;}
.ba-mark svg{width:10px;height:10px;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.ba-mark.x{background:rgba(251,113,133,0.1);border:1px solid rgba(251,113,133,0.28);}
.ba-mark.x svg{stroke:var(--bad);}
.ba-mark.c{background:rgba(74,222,128,0.12);border:1px solid rgba(74,222,128,0.3);}
.ba-mark.c svg{stroke:var(--ok);}

/* ==============================
   COMO FUNCIONA (3 steps)
============================== */
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px;}
.how-card{
  background:var(--surface-1);border:1px solid var(--hairline-strong);
  border-radius:var(--r-7);padding:28px 26px;display:flex;flex-direction:column;gap:14px;
  position:relative;overflow:hidden;transition:border-color 0.25s ease,box-shadow 0.25s ease;
}
.how-card:hover{border-color:rgba(124,58,237,0.28);box-shadow:0 16px 40px -24px rgba(124,58,237,0.18);}
.how-num{
  width:44px;height:44px;border-radius:12px;flex-shrink:0;
  background:rgba(124,58,237,0.12);border:1px solid rgba(124,58,237,0.28);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-mono);font-size:16px;font-weight:600;color:var(--juris-300);
}
.how-kicker{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:0.14em;color:var(--dim);}
.how-title{font-size:17px;font-weight:500;color:var(--text);letter-spacing:-0.02em;line-height:1.25;}
.how-desc{font-size:13.5px;color:var(--ink-400);line-height:1.7;}

/* ==============================
   FAQ
============================== */
.faq-wrap{max-width:820px;margin:52px auto 0;}
.faq-item{border:1px solid var(--hairline-strong);border-radius:var(--r-5);background:var(--surface-1);margin-bottom:10px;overflow:hidden;transition:border-color 0.2s ease;}
.faq-item:hover{border-color:rgba(124,58,237,0.2);}
.faq-item.open{border-color:rgba(124,58,237,0.3);background:rgba(124,58,237,0.03);}
.faq-q{
  display:flex;align-items:center;gap:14px;padding:18px 22px;cursor:pointer;
  font-size:14.5px;font-weight:500;color:var(--text);letter-spacing:-0.01em;user-select:none;
}
.faq-q-num{font-family:var(--font-mono);font-size:11px;color:var(--juris-300);flex-shrink:0;}
.faq-q-txt{flex:1;}
.faq-chevron{width:16px;height:16px;flex-shrink:0;fill:none;stroke:var(--muted);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform 0.25s ease;}
.faq-item.open .faq-chevron{transform:rotate(180deg);stroke:var(--juris-300);}
.faq-a{max-height:0;overflow:hidden;transition:max-height 0.3s ease;}
.faq-a-inner{padding:0 22px 20px 50px;font-size:13.5px;color:var(--ink-400);line-height:1.75;}

/* ==============================
   CTA FINAL
============================== */
.cta-final{
  background:var(--surface-1);border:1px solid rgba(124,58,237,0.3);
  border-radius:var(--r-7);padding:clamp(36px,5vw,56px) clamp(28px,4vw,48px);
  display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;
  position:relative;overflow:hidden;max-width:760px;margin:0 auto;
}
.cta-final::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(124,58,237,0.12),transparent 62%);pointer-events:none;}
.cta-icon{
  width:58px;height:58px;border-radius:50%;
  background:rgba(124,58,237,0.14);border:1.5px solid rgba(124,58,237,0.3);
  display:flex;align-items:center;justify-content:center;position:relative;z-index:1;
}
.cta-icon svg{width:27px;height:27px;fill:none;stroke:var(--juris-300);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.cta-final-h{font-size:clamp(24px,3vw,36px);font-weight:500;color:var(--text);line-height:1.15;letter-spacing:-0.025em;position:relative;z-index:1;}
.cta-final-p{font-size:clamp(14px,1.5vw,16px);color:var(--ink-400);line-height:1.7;max-width:48ch;position:relative;z-index:1;}
.cta-seals{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding-top:18px;margin-top:4px;border-top:1px solid var(--hairline);width:100%;max-width:520px;position:relative;z-index:1;}
.cta-seal{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:0.08em;
  color:var(--dim);padding:5px 12px;border-radius:6px;border:1px solid var(--hairline-strong);
}
.cta-seal svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}

/* ==============================
   FOOTER
============================== */
footer{position:relative;padding:64px 0 30px;border-top:1px solid var(--hairline);background:linear-gradient(180deg,var(--surface-1) 0%,#0A0818 100%);}
footer::before{content:'';position:absolute;top:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(124,58,237,0.4),transparent);}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;padding-bottom:40px;border-bottom:1px solid var(--hairline);}
.footer-brand-col{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:320px;}
.footer-logo{height:46px;width:auto;opacity:0.95;}
.footer-tag{font-size:13px;color:var(--ink-400);line-height:1.65;}
.footer-seals{display:flex;flex-wrap:wrap;gap:7px;}
.footer-seal{
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  font-family:var(--font-mono);font-size:8.5px;text-transform:uppercase;letter-spacing:0.08em;
  color:var(--muted);padding:5px 10px;border-radius:6px;
  border:1px solid var(--hairline-strong);background:var(--surface-2);
}
.footer-seal svg{width:11px;height:11px;fill:none;stroke:var(--juris-300);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.footer-social{display:flex;gap:8px;margin-top:2px;}
.footer-social a{
  width:36px;height:36px;border-radius:10px;border:1px solid var(--hairline-strong);background:var(--surface-2);
  display:flex;align-items:center;justify-content:center;transition:all 0.18s ease;
}
.footer-social a:hover{border-color:rgba(124,58,237,0.4);background:rgba(124,58,237,0.1);transform:translateY(-2px);}
.footer-social a:hover svg{stroke:var(--juris-300);}
.footer-social svg{width:15px;height:15px;fill:none;stroke:var(--muted);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:stroke 0.18s ease;}
.footer-links{display:contents;}
.footer-group{display:flex;flex-direction:column;}
.footer-col-title{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:0.12em;color:var(--juris-300);margin-bottom:16px;}
.footer-col{display:flex;flex-direction:column;gap:11px;align-items:flex-start;}
.footer-col a{font-size:13px;color:var(--ink-400);text-decoration:none;white-space:nowrap;transition:color 0.15s,padding 0.18s;}
.footer-col a:hover{color:var(--text);padding-left:4px;}
.footer-bottom{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-top:26px;}
.footer-copy{font-family:var(--font-mono);font-size:10px;color:var(--dim);letter-spacing:0.02em;}
.footer-made{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10px;color:var(--dim);letter-spacing:0.03em;}
.footer-made .fm-dot{width:5px;height:5px;border-radius:50%;background:var(--ok);box-shadow:0 0 6px rgba(74,222,128,0.6);}
.footer-top-link{
  margin-left:auto;display:inline-flex;align-items:center;gap:7px;text-decoration:none;
  font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted);
  padding:7px 13px;border-radius:8px;border:1px solid var(--hairline-strong);background:var(--surface-2);transition:all 0.18s ease;
}
.footer-top-link:hover{color:var(--text);border-color:rgba(124,58,237,0.4);background:rgba(124,58,237,0.08);}
.footer-top-link svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform 0.18s ease;}
.footer-top-link:hover svg{transform:translateY(-2px);}

/* ==============================
   RESPONSIVE
============================== */
@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:44px;}
  .hero-content{max-width:none;}
  .hero-visual{max-width:560px;margin:0 auto;width:100%;}
  .feat-grid,.ba-grid{grid-template-columns:1fr;}
  .prob-grid,.how-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:860px){
  .nav-links,.nav-ghost{display:none;}
  .nav-burger{display:flex;}
  .nav-mobile{display:flex;}
  .footer-top{grid-template-columns:1fr 1fr 1fr;gap:32px 28px;}
  .footer-brand-col{grid-column:1/-1;max-width:none;}
}
@media(max-width:600px){
  .prob-grid,.how-grid{grid-template-columns:1fr;}
  .btn-group{flex-direction:column;align-items:stretch;}
  .btn-group .btn{width:100%;justify-content:center;}
  .demo-pecas{grid-template-columns:1fr;}
  .nav-cta{padding:8px 14px;}
  .footer-top{grid-template-columns:1fr 1fr;gap:28px 24px;}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:14px;}
  .footer-top-link{margin-left:0;}
  .agent-done-actions{flex-direction:column;}
  .agent-done-actions .agent-act{width:100%;justify-content:center;}
}
@media(max-width:420px){
  .footer-top{grid-template-columns:1fr;}
}

/* ==============================
   SPLIT FORM STYLES FROM HOME
============================== */
.cta-final-split{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);
  align-items:start;text-align:left;gap:clamp(28px,4vw,48px);
  max-width:1080px;
}
.cta-final-split .cta-final-info{display:flex;flex-direction:column;align-items:flex-start;gap:16px;position:relative;z-index:1;}
.cta-final-split .cta-seals{justify-content:flex-start;margin-left:0;max-width:none;}
.cta-final-formcard{
  background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:20px;
  padding:26px 26px 22px;position:relative;z-index:1;text-align:left;width:100%;
}
.cta-final-formcard .modal-header{text-align:left;margin-bottom:16px;}
.cta-final-formcard .modal-subtitle{margin:0;}
.modal-header{margin-bottom:18px;text-align:center;}
.modal-eyebrow{
  font-family:var(--font-mono);font-size:10px;letter-spacing:0.14em;color:var(--juris-300);
  margin-bottom:6px;
}
.modal-header h3{font-size:22px;font-weight:600;margin:0 0 6px;color:var(--text);}
.modal-subtitle{font-size:14px;color:var(--ink-400);line-height:1.5;max-width:44ch;margin:0 auto;}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;}
.form-field.full{grid-column:1 / -1;}
.form-field label{display:block;font-size:12px;font-weight:500;color:var(--ink-300);margin-bottom:6px;}
.form-field input,
.form-field select,
.form-field textarea{
  width:100%;background:var(--surface-1);border:1px solid var(--hairline-strong);
  border-radius:9px;padding:10px 12px;font-size:14px;color:var(--text);
  font-family:var(--font-sans);transition:border-color .15s ease,box-shadow .15s ease;outline:none;
}
.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{
  border-color:var(--juris-400);box-shadow:0 0 0 3px rgba(124,58,237,0.12);
}
.form-field textarea{resize:vertical;min-height:82px;}
.form-field select{
  appearance:none;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="%239C95BD" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"/></svg>');
  background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;
}
.form-actions{display:flex;gap:10px;margin-top:18px;}
.form-actions .btn{flex:1;justify-content:center;padding-top:12px;padding-bottom:12px;}
.form-note{font-size:11.5px;color:var(--dim);text-align:center;margin-top:12px;}
.consent-label{
  display:flex;align-items:flex-start;gap:10px;font-size:12.5px;color:var(--ink-400);line-height:1.4;cursor:pointer;margin-top:4px;
}
.consent-label input[type="checkbox"]{width:16px;height:16px;margin-top:2px;accent-color:#7c3aed;flex-shrink:0;}
.consent-label span{flex:1;}
.form-success{text-align:center;padding:12px 4px 6px;}
.form-success .success-icon{
  width:72px;height:72px;border-radius:50%;
  background:rgba(74,222,128,0.1);border:1px solid rgba(74,222,128,0.25);
  margin:0 auto 14px;display:flex;align-items:center;justify-content:center;color:var(--ok);
}
.form-success h4{font-size:20px;margin:0 0 6px;color:var(--text);}
.form-success p{color:var(--ink-400);line-height:1.55;max-width:38ch;margin:0 auto 16px;}
@media(max-width:900px){
  .cta-final-split{grid-template-columns:1fr;}
}
@media(max-width:520px){
  .form-grid{grid-template-columns:1fr;}
}

/* ==============================
   WHATSAPP — balãozinho flutuante (mesmo do DET)
============================== */
.wa-fab{
  --wa-500:#25D366;
  --wa-600:#12A85B;
  --wa-300:#34D572;
  position:fixed;
  right:max(16px,env(safe-area-inset-right,0px));
  bottom:max(16px,env(safe-area-inset-bottom,0px));
  z-index:200;
  display:flex;flex-direction:column;align-items:flex-end;gap:14px;
  opacity:0;transform:translateY(16px);
  transition:opacity .5s var(--ease-out),transform .5s var(--ease-out);
}
.wa-fab.in{opacity:1;transform:none;}
.wa-btn{
  position:relative;width:60px;height:60px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;color:#fff;
  background:radial-gradient(125% 125% at 32% 22%,var(--wa-300),var(--wa-500) 46%,var(--wa-600));
  border:1px solid rgba(255,255,255,0.22);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.34),
    0 10px 26px -10px rgba(18,168,91,0.75),
    0 4px 12px -4px rgba(0,0,0,0.55);
  transition:transform .25s var(--ease-out),box-shadow .25s var(--ease-out);
}
.wa-btn:hover{
  transform:translateY(-3px) scale(1.04);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.4),
    0 18px 38px -12px rgba(18,168,91,0.85),
    0 6px 16px -6px rgba(0,0,0,0.6);
}
.wa-btn:active{transform:translateY(-1px) scale(0.99);}
.wa-btn:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(52,213,114,0.4),0 10px 26px -10px rgba(18,168,91,0.75);}
.wa-btn-icon{width:32px;height:32px;position:relative;z-index:1;filter:drop-shadow(0 1px 1px rgba(0,0,0,0.2));}
.wa-btn-ring{
  position:absolute;inset:0;border-radius:50%;
  border:2px solid var(--wa-500);opacity:0;pointer-events:none;
  animation:wa-pulse 2.8s var(--ease-out) infinite;
}
@keyframes wa-pulse{
  0%{transform:scale(1);opacity:.45;}
  70%{opacity:0;}
  100%{transform:scale(1.55);opacity:0;}
}
.wa-bubble{
  position:relative;max-width:248px;cursor:pointer;
  background:rgba(13,11,28,0.9);
  -webkit-backdrop-filter:blur(14px) saturate(1.3);
  backdrop-filter:blur(14px) saturate(1.3);
  border:1px solid var(--hairline-strong);
  border-radius:16px;padding:14px 16px 13px;
  box-shadow:0 22px 50px -26px rgba(0,0,0,0.92),0 0 0 1px rgba(124,58,237,0.10);
  transform-origin:bottom right;
  opacity:0;transform:translateY(10px) scale(0.95);pointer-events:none;
  transition:opacity .3s var(--ease-out),transform .3s var(--ease-out);
}
.wa-fab.show-bubble .wa-bubble{opacity:1;transform:none;pointer-events:auto;}
.wa-bubble:hover{border-color:rgba(124,58,237,0.34);}
.wa-bubble::after{
  content:'';position:absolute;right:22px;bottom:-6px;width:13px;height:13px;
  background:rgba(13,11,28,0.9);
  border-right:1px solid var(--hairline-strong);
  border-bottom:1px solid var(--hairline-strong);
  transform:rotate(45deg);
}
.wa-bubble-title{font-family:var(--font-sans);font-size:13.5px;font-weight:600;color:var(--text);margin:0 0 3px;line-height:1.3;padding-right:14px;}
.wa-bubble-text{font-size:12.5px;line-height:1.5;color:var(--muted);margin:0 0 10px;}
.wa-bubble-cta{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:0.1em;color:var(--ok);}
.wa-bubble-cta svg{width:12px;height:12px;}
.wa-bubble-close{
  position:absolute;top:7px;right:7px;width:22px;height:22px;border:none;cursor:pointer;
  background:transparent;color:var(--dim);border-radius:7px;
  display:flex;align-items:center;justify-content:center;
  transition:color .2s ease,background .2s ease;
}
.wa-bubble-close svg{width:13px;height:13px;}
.wa-bubble-close:hover{color:var(--text);background:rgba(255,255,255,0.07);}
@media(max-width:480px){
  .wa-bubble{max-width:212px;padding:12px 14px 11px;}
  .wa-bubble-title{font-size:13px;}
  .wa-bubble-text{font-size:12px;}
}
@media(prefers-reduced-motion:reduce){
  .wa-fab{transition:opacity .3s ease;transform:none;}
  .wa-btn,.wa-bubble{transition:none;}
  .wa-btn-ring{animation:none;}
}

