/* Fontes self-hosted (Poppins + IBM Plex Mono), subsets latin e latin-ext.
   Geradas a partir do CSS oficial do Google Fonts em 2026-08-10.
   Motivo: o CSS do Google Fonts era render-blocking e prendia o LCP do H1
   numa cadeia critica de ~974ms. Ver recursos/pagespeed_report_2026-07-20.md (P1). */

/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/ibm-plex-mono-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/ibm-plex-mono-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/ibm-plex-mono-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/ibm-plex-mono-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/ibm-plex-mono-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/ibm-plex-mono-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/poppins-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/poppins-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/poppins-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/poppins-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/poppins-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/poppins-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/poppins-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/poppins-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ============================================================
   Lerian Matcher LP  v4  ·  Poppins, faithful dark mocks, screen-sized sections
   Type: Poppins (everything) · IBM Plex Mono (data)   [flip --serif to restore serif body]
   Sections are the size of the screen (no forced snap). Demo is scroll-driven.
   ============================================================ */
:root{
  --bg:#FAF8F3;--surface:#FFFFFF;--cream:#F3F0E7;--cream-2:#ECE8DC;
  --ink:#1A1A17;--ink-2:#54514A;--ink-3:#8B877C;
  --line:#E7E3D7;--line-2:#D7D2C5;
  --accent:#FEED02;
  --green:#12A150;--green-dk:#0B7A3B;--green-soft:#E7F4EC;
  --red:#DB4B43;--red-soft:#FBEBEA;
  /* dark product surface (faithful Matcher UI) */
  --dark:#16171A;--dark-2:#1A1B1F;--dsurf:#1C1E22;--dsurf-2:#202227;
  --dline:#2A2C31;--dline-2:#3A3C42;--dtext:#EDECE8;--dmut:#93908A;--dfaint:#6F6D66;
  --green-neon:#4ED77E;--red-neon:#FF6B63;
  --r-xl:22px;--r-lg:15px;--r-md:11px;--r-sm:8px;--r-pill:100px;
  --sh-card:0 1px 2px rgba(26,26,23,.04);
  --sh-win:0 2px 4px rgba(26,26,23,.04),0 24px 60px -18px rgba(26,26,23,.22),0 60px 120px -40px rgba(26,26,23,.16);
  --sh-dark:0 2px 8px rgba(0,0,0,.22),0 34px 80px -24px rgba(0,0,0,.45);
  --maxw:1200px;
  --sans:"Poppins",system-ui,sans-serif;
  --serif:"Poppins",system-ui,sans-serif; /* all Poppins; set to "IBM Plex Serif",Georgia,serif to bring serif body back */
  --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--serif);color:var(--ink-2);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-size:16px}
a{color:inherit;text-decoration:none}
img,svg{display:block}
.container{max-width:var(--maxw);margin:0 auto;padding:0 26px;width:100%}

/* ---- type ---- */
h1,h2,h3,h4{font-family:var(--sans);color:var(--ink);font-weight:700;line-height:1.08;letter-spacing:-.025em}
.mono{font-family:var(--mono);font-feature-settings:"tnum" 1}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(254,237,2,.22)}
.lead{font-size:1.15rem;color:var(--ink-2);line-height:1.6}
.balance{text-wrap:balance}

/* ---- screen-sized sections (NO forced snap) ---- */
.snap{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:104px 0;position:relative}
.snap>.container{width:100%}
.sec-head{max-width:680px;margin:0 auto 48px;text-align:center}
.sec-head h2{font-size:clamp(2rem,4.2vw,3rem)}
.sec-head .lead{margin:18px auto 0;max-width:60ch}
@media(max-width:900px){.snap{min-height:0;padding:72px 0}}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--sans);font-weight:600;font-size:15px;border-radius:var(--r-sm);cursor:pointer;padding:13px 22px;border:1px solid transparent;transition:transform .16s,box-shadow .22s,background .2s,border-color .2s}
.btn-primary{background:var(--accent);color:var(--ink);box-shadow:0 6px 20px -6px rgba(254,237,2,.7)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px -6px rgba(254,237,2,.85)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}
.btn-ghost:hover{background:var(--surface);border-color:var(--ink-3)}
.btn-lg{padding:16px 30px;font-size:16px}
.arrow{transition:transform .2s}.btn:hover .arrow{transform:translateX(3px)}

/* ---- nav ---- */
header.nav{position:fixed;inset:0 0 auto 0;z-index:100;background:rgba(250,248,243,.82);backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid transparent;transition:border-color .3s}
header.nav.scrolled{border-bottom-color:var(--line)}
.nav-in{height:68px;display:flex;align-items:center;justify-content:space-between}
.logo{font-family:var(--sans);font-weight:700;font-size:20px;letter-spacing:-.02em;color:var(--ink)}
.logo .dim{color:var(--ink-3)}
.nav-links{display:flex;gap:32px;font-family:var(--sans);font-size:14.5px;font-weight:500;color:var(--ink-2)}
.nav-links a:hover{color:var(--ink)}
@media(max-width:900px){.nav-links{display:none}}
.navdrop{position:relative;display:inline-flex}
.navdrop-t{font-family:var(--sans);font-size:14.5px;font-weight:500;color:var(--ink-2);background:none;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:0}
.navdrop-t:hover{color:var(--ink)}
.navdrop-t svg{width:14px;height:14px;transition:transform .2s}
.navdrop:hover .navdrop-t svg,.navdrop:focus-within .navdrop-t svg{transform:rotate(180deg)}
.navdrop-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(10px);min-width:216px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-win);padding:7px;opacity:0;visibility:hidden;transition:opacity .18s,transform .18s;z-index:120}
.navdrop-menu::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.navdrop:hover .navdrop-menu,.navdrop:focus-within .navdrop-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(6px)}
.navdrop-menu a{display:flex;align-items:center;gap:10px;font-family:var(--sans);font-size:13.5px;font-weight:500;color:var(--ink-2);padding:9px 12px;border-radius:9px;white-space:nowrap}
.navdrop-menu a:hover{background:var(--cream);color:var(--ink)}
.navdrop-menu a .di{width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0}

/* ============================================================ HERO ============================================================ */
.hero{overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;z-index:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:54px 54px;opacity:.55;
  -webkit-mask-image:radial-gradient(ellipse 65% 55% at 22% 12%,#000 20%,transparent 66%);
  mask-image:radial-gradient(ellipse 65% 55% at 22% 12%,#000 20%,transparent 66%)}
.hero::after{content:"";position:absolute;top:-120px;right:-120px;width:620px;height:620px;z-index:0;
  background:radial-gradient(ellipse at center,rgba(254,237,2,.16),transparent 62%);filter:blur(24px)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--sans);font-size:12.5px;font-weight:500;color:var(--ink-2);background:var(--surface);border:1px solid var(--line-2);padding:7px 14px;border-radius:var(--r-pill);margin-bottom:24px;box-shadow:var(--sh-card)}
.badge b{color:var(--ink);font-weight:600}
h1.h1{font-size:clamp(2.6rem,5.4vw,4.2rem);letter-spacing:-.035em}
h1.h1 .u{background:linear-gradient(var(--accent),var(--accent)) 0 92%/100% .16em no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.hero .sub{font-size:1.2rem;color:var(--ink-2);margin-top:24px;max-width:44ch;line-height:1.6}
.hero-cta{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.trust{display:flex;flex-wrap:wrap;gap:9px 22px;margin-top:30px;font-family:var(--sans);font-size:13px;color:var(--ink-3);font-weight:500}
.trust span{display:inline-flex;align-items:center;gap:7px}
.trust svg{width:15px;height:15px;color:var(--green)}
@media(max-width:920px){.hero-grid{grid-template-columns:1fr;gap:40px}.hero .sub{max-width:100%}}

/* credibility rail (inside hero, bottom) */
.cred{position:absolute;left:0;right:0;bottom:34px;z-index:1}
.cred-in{display:flex;align-items:center;justify-content:center;gap:14px 32px;flex-wrap:wrap;border-top:1px solid var(--line);padding:26px 26px 0;max-width:var(--maxw);margin:0 auto}
.cred .k{font-family:var(--sans);font-size:13px;font-weight:500;color:var(--ink-3);display:inline-flex;gap:8px;align-items:center}
.cred .k svg{width:16px;height:16px;color:var(--ink)}
.cred .sep{width:1px;height:18px;background:var(--line-2)}
@media(max-width:900px){.cred{position:static;margin-top:40px}.cred .sep{display:none}}

/* ---- HERO: faithful dark terminal mock ---- */
.term{background:var(--dark);border:1px solid var(--dline);border-radius:18px;box-shadow:var(--sh-dark);overflow:hidden}
.tbar{display:flex;align-items:center;gap:7px;padding:14px 18px;border-bottom:1px solid var(--dline)}
.d3{width:11px;height:11px;border-radius:50%}
.tbar .path{margin-left:12px;font-family:var(--mono);font-size:12px;color:var(--dfaint)}
.tbar .live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:10.5px;font-weight:600;color:var(--green-neon);letter-spacing:.08em}
.tbar .live i{width:6px;height:6px;border-radius:50%;background:var(--green-neon);box-shadow:0 0 0 0 rgba(78,215,126,.5);animation:pl 1.9s infinite}
@keyframes pl{70%{box-shadow:0 0 0 7px rgba(78,215,126,0)}100%{box-shadow:0 0 0 0 rgba(78,215,126,0)}}
.tbody{padding:16px}
.trow{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;background:var(--dsurf);border:1px solid var(--dline);border-radius:11px;padding:13px 15px;margin-bottom:9px;opacity:0;transform:translateY(9px);transition:opacity .45s,transform .45s,border-color .4s}
.trow.show{opacity:1;transform:none}
.trow.ok{border-color:rgba(78,215,126,.4)}
.trow.bad{border-color:rgba(255,107,99,.5)}
.trow .id{font-family:var(--mono);font-size:12.5px;color:#DEDDD8;font-weight:500}
.trow .meta{font-family:var(--mono);font-size:11px;color:var(--dfaint);margin-top:3px}
.trow .val{font-family:var(--mono);font-size:13px;color:var(--dtext);font-weight:600;text-align:right}
.tst{display:inline-flex;align-items:center;gap:5px;font-family:var(--sans);font-size:10px;font-weight:600;padding:4px 9px;border-radius:100px;margin-top:6px;letter-spacing:.02em}
.tst.wait{background:rgba(255,255,255,.06);color:#9A988F}
.tst.wait i{width:5px;height:5px;border-radius:50%;background:#EBC94A;animation:blink 1s infinite}
@keyframes blink{50%{opacity:.3}}
.tst.okk{background:rgba(78,215,126,.15);color:var(--green-neon)}
.tst.badd{background:rgba(255,107,99,.16);color:var(--red-neon)}
.tcallout{background:rgba(255,107,99,.09);border:1px solid rgba(255,107,99,.3);border-radius:10px;padding:10px 13px;display:flex;gap:9px;align-items:center;opacity:0;max-height:0;overflow:hidden;transition:opacity .4s,max-height .4s,margin .4s}
.tcallout.show{opacity:1;max-height:80px;margin-top:2px}
.tcallout svg{color:var(--red-neon);flex-shrink:0}
.tcallout .t{font-family:var(--mono);font-size:11px;color:#E7C4C1;line-height:1.45}
.tcallout .t b{color:#fff}
.tfoot{border-top:1px solid var(--dline);margin-top:14px;padding:16px 16px 18px;display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:center}
.tfoot .fn{font-family:var(--mono);font-size:1.5rem;font-weight:600;letter-spacing:-.02em;line-height:1}
.tfoot .fn.g{color:var(--green-neon)}.tfoot .fn.r{color:var(--red-neon)}
.tfoot .fl{font-family:var(--sans);font-size:9.5px;color:var(--dfaint);font-weight:500;letter-spacing:.07em;text-transform:uppercase;margin-top:4px}
.tfoot .rodar{background:var(--dsurf-2);color:#CFCEC8;border:1px solid var(--dline-2);font-family:var(--sans);font-size:11.5px;font-weight:500;padding:8px 13px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:.15s}
.tfoot .rodar:hover{background:#2A2C31;color:#fff}
.tbarprog{grid-column:1/-1;height:5px;background:var(--dline);border-radius:100px;overflow:hidden;margin-top:2px}
.tbarprog>i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green-dk),var(--green-neon));border-radius:100px;transition:width .9s ease}

/* ============================================================ PROBLEM ============================================================ */
.problem{background:var(--cream);border-block:1px solid var(--line)}
.prob-top{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:end;margin-bottom:56px}
.prob-top h2{font-size:clamp(1.9rem,4vw,2.8rem);color:var(--ink)}
.prob-quote{font-family:var(--sans);font-weight:500;font-size:clamp(1.3rem,2.2vw,1.7rem);color:var(--ink);line-height:1.36;letter-spacing:-.015em}
.prob-quote b{font-weight:600;background:linear-gradient(transparent 62%,rgba(254,237,2,.5) 0);padding:0 2px}
@media(max-width:820px){.prob-top{grid-template-columns:1fr;gap:28px}}
.statline{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}
.statline .s{padding:30px 26px;border-right:1px solid var(--line)}
.statline .s:last-child{border-right:none}
.statline .n{font-family:var(--sans);font-size:2.6rem;font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.statline .n b{color:var(--ink);font-weight:700}
.statline p{font-size:.95rem;color:var(--ink-2);margin-top:12px;line-height:1.5}
.statline cite{font-family:var(--sans);font-size:10px;font-style:normal;color:var(--ink-3);margin-top:12px;display:block}
@media(max-width:900px){.statline{grid-template-columns:1fr 1fr}.statline .s:nth-child(2){border-right:none}.statline .s:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:520px){.statline{grid-template-columns:1fr}.statline .s{border-right:none;border-bottom:1px solid var(--line)}.statline .s:last-child{border-bottom:none}}

/* ============================================================ COMO FUNCIONA: scroll-driven, faithful dark console ============================================================ */
.flow{padding:96px 0;position:relative}
.flow-head{max-width:720px;margin:0 auto 40px;text-align:center}
.flow-head h2{font-size:clamp(1.9rem,4vw,2.8rem);color:var(--ink)}
.flow-head .lead{margin:16px auto 0;max-width:56ch}
.flow-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:52px;align-items:start}
.flow-stages{display:flex;flex-direction:column;gap:16px}
@media(min-width:961px){.flow-stages{gap:12vh;padding:4vh 0 34vh}}
.stage{border:1px solid var(--line);border-radius:var(--r-lg);padding:24px 26px;background:var(--surface);transition:border-color .3s,box-shadow .3s,opacity .3s;opacity:.5}
.stage[data-on="1"]{border-color:var(--line-2);box-shadow:var(--sh-card);opacity:1}
.stage .st-top{display:flex;align-items:center;gap:13px;margin-bottom:11px}
.stage .snum{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--ink-3);background:var(--cream);border:1px solid var(--line);border-radius:7px;width:34px;height:26px;display:flex;align-items:center;justify-content:center;transition:.3s}
.stage[data-on="1"] .snum{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.stage h3{font-family:var(--sans);font-size:1.18rem;color:var(--ink)}
.stage p{font-size:.97rem;color:var(--ink-2);line-height:1.55}
.flow-sticky{position:sticky;top:110px;align-self:start}
/* faithful dark console */
.console{background:var(--dark);border:1px solid var(--dline);border-radius:var(--r-xl);box-shadow:var(--sh-dark);overflow:hidden}
.console .tbar{background:var(--dark-2)}
.dash{display:grid;grid-template-columns:180px 1fr;min-height:420px}
.dnav{border-right:1px solid var(--dline);padding:14px 11px}
.dnav .brand{display:flex;align-items:center;gap:9px;font-family:var(--sans);font-weight:700;color:#fff;font-size:14px;margin-bottom:12px;padding:0 4px}
.dnav .brand i{width:22px;height:22px;border-radius:6px;background:var(--dsurf-2);display:flex;align-items:center;justify-content:center;color:var(--green-neon)}
.dnav .grp{font-family:var(--sans);font-size:8.5px;letter-spacing:.12em;text-transform:uppercase;color:#57554E;margin:13px 0 5px;padding:0 8px}
.dnav a{display:flex;align-items:center;gap:8px;font-family:var(--sans);font-size:11.5px;color:#8F8A81;padding:6px 8px;border-radius:6px;margin-bottom:1px;transition:.2s}
.dnav a svg{width:14px;height:14px;opacity:.8;flex-shrink:0}
.dnav a.on{background:var(--dsurf-2);color:var(--dtext)}
.dnav a.on svg{color:var(--green-neon);opacity:1}
.dmain{padding:18px 20px;position:relative}
.cscreen{display:none}
.cscreen.on{display:block;animation:cardturn .55s ease}
@keyframes cardturn{from{opacity:0;transform:perspective(900px) rotateX(-7deg) translateY(12px)}to{opacity:1;transform:none}}
.dh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.dh h4{color:#fff;font-family:var(--sans);font-size:1.08rem;font-weight:600}
.dh .subt{color:var(--dmut);font-size:.82rem;margin-top:2px}
.ctxpill{font-family:var(--mono);font-size:10.5px;color:#B7B4AC;background:var(--dsurf);border:1px solid var(--dline);border-radius:7px;padding:6px 10px;white-space:nowrap}
.ctxpill b{color:#fff}
.drow{display:flex;align-items:center;gap:12px;background:var(--dsurf);border:1px solid var(--dline);border-radius:10px;padding:11px 13px;margin-bottom:8px}
.drow .fi{width:32px;height:32px;border-radius:8px;background:var(--dsurf-2);border:1px solid var(--dline);display:flex;align-items:center;justify-content:center;color:#B7B4AC;flex-shrink:0;font-family:var(--mono);font-size:9.5px;font-weight:600}
.drow .fn{font-family:var(--mono);font-size:12px;color:var(--dtext);font-weight:500}
.drow .fm{font-family:var(--mono);font-size:10px;color:var(--dfaint);margin-top:2px}
.drow .fs{margin-left:auto;font-family:var(--sans);font-size:10px;font-weight:600;color:var(--green-neon);background:rgba(78,215,126,.14);padding:4px 9px;border-radius:100px;white-space:nowrap}
.dcard{background:var(--dsurf);border:1px solid var(--dline);border-radius:12px;padding:17px 18px}
.dcard .ck{font-family:var(--sans);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--dfaint);display:flex;justify-content:space-between}
.mrate-big{font-family:var(--mono);font-size:2.4rem;font-weight:600;color:#fff;letter-spacing:-.03em;line-height:1;margin-top:8px}
.mbar{height:12px;background:var(--dsurf-2);border-radius:100px;margin:12px 0 4px;overflow:hidden}
.mbar>i{display:block;height:100%;width:0;background:linear-gradient(90deg,#0E4027,#2E9E5B);border-radius:100px;transition:width 1s ease}
.mscale{display:flex;justify-content:space-between;font-family:var(--mono);font-size:9px;color:#57554E}
.mstats{display:grid;grid-template-columns:1fr 1fr;margin-top:16px;border-top:1px solid var(--dline);padding-top:16px}
.mstats>div:last-child{text-align:right}
.mstats .lab{font-family:var(--sans);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--dmut);display:inline-flex;align-items:center;gap:6px}
.mstats .lab i{width:6px;height:6px;border-radius:50%}
.mstats .big{font-family:var(--mono);font-size:1.5rem;font-weight:600;margin-top:5px}
.mstats .amt{font-family:var(--mono);font-size:11px;color:var(--dmut);margin-top:2px}
.g2{color:var(--green-neon)}.r2{color:var(--red-neon)}
.exc{background:var(--dsurf);border:1px solid var(--dline);border-radius:11px;padding:11px 13px;margin-bottom:8px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}
.exc .ei{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.exc .ei.r{background:rgba(255,107,99,.15);color:var(--red-neon)}
.exc .ei.y{background:rgba(254,237,2,.16);color:#E0C64A}
.exc .etitle{font-family:var(--sans);font-size:12.5px;font-weight:600;color:var(--dtext)}
.exc .emeta{font-family:var(--mono);font-size:10px;color:var(--dfaint);margin-top:2px}
.exc .etag{font-family:var(--mono);font-size:9.5px;color:#B7B4AC;background:var(--dsurf-2);border:1px solid var(--dline);border-radius:6px;padding:4px 8px;white-space:nowrap}
.exc .eamt{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--dtext);text-align:right}
.rep-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.rep{background:var(--dsurf);border:1px solid var(--dline);border-radius:11px;padding:14px 15px}
.rep .k{font-family:var(--sans);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--dfaint)}
.rep .v{font-family:var(--mono);font-size:1.4rem;font-weight:600;color:var(--dtext);margin-top:5px}
.rep .a{font-family:var(--mono);font-size:10.5px;color:var(--dmut);margin-top:2px}
.rep.full{grid-column:1/-1;display:flex;align-items:center;gap:12px}
.rep.full .ok{width:34px;height:34px;border-radius:9px;background:rgba(78,215,126,.14);color:var(--green-neon);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.rep.full .txt{font-family:var(--sans);font-size:12.5px;color:var(--dtext);font-weight:500}
.rep.full .txt small{display:block;font-weight:400;color:var(--dmut);font-family:var(--mono);font-size:10px;margin-top:2px}
@media(max-width:960px){.flow-grid{grid-template-columns:1fr;gap:26px}.flow-stages{order:2;gap:16px;padding:0}.flow-sticky{position:relative;top:0;order:1}.stage{opacity:1}}
@media(max-width:520px){.dash{grid-template-columns:1fr}.dnav{display:none}}

/* ============================================================ POWER PROOF ============================================================ */
.power-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.power h2{font-size:clamp(1.9rem,3.8vw,2.7rem);color:var(--ink);max-width:14ch}
.power .lead{margin-top:18px;max-width:46ch}
.power .plist{list-style:none;margin-top:24px;display:grid;gap:13px}
.power .plist li{display:flex;gap:12px;align-items:flex-start;font-size:1rem;color:var(--ink-2)}
.power .plist b{color:var(--ink);font-weight:600}
.power .plist svg{color:var(--green);flex-shrink:0;margin-top:4px}
.variance{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:28px;box-shadow:var(--sh-card)}
.variance .vh{display:flex;justify-content:space-between;align-items:center;font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px}
.vsrc{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}
.vsrc .vl{font-family:var(--sans);font-size:14px;color:var(--ink);font-weight:500}
.vsrc .vv{font-family:var(--mono);font-size:13px;color:var(--ink-2);margin-left:auto;margin-right:12px}
.vsrc .vtag{font-family:var(--mono);font-size:10px;color:var(--ink-3);background:var(--cream);border:1px solid var(--line);border-radius:6px;padding:3px 7px}
.vnet{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:6px}
.vnet .nl{font-family:var(--sans);font-weight:600;font-size:1.05rem;color:var(--ink)}
.vnet .nv{font-family:var(--sans);font-size:1.7rem;font-weight:700;color:var(--green-dk);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
@media(max-width:900px){.power-grid{grid-template-columns:1fr;gap:34px}.power h2{max-width:100%}}

/* ============================================================ IA / INTELIGÊNCIA ============================================================ */
.ai .sec-head{margin-bottom:46px}
.ai-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:38px;align-items:stretch}
/* copilot side panel (faithful recreation of the docked Copilot) */
.cop{background:#0B0C0E;display:flex;flex-direction:column;min-height:472px}
.cop-head{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--dline)}
.cop-head .t{font-family:var(--sans);font-weight:600;font-size:16px;color:#fff}
.cop-head .dock{width:28px;height:25px;border-radius:6px;border:1px solid var(--dline-2);background:transparent;color:var(--dfaint);display:flex;align-items:center;justify-content:center;cursor:pointer}
.cop-head .dock svg{width:14px;height:14px}
.cop-body{flex:1;padding:0 18px;overflow:hidden}
.cmsg{padding:16px 0;border-bottom:1px solid var(--dline);opacity:0;transform:translateY(8px);transition:opacity .42s,transform .42s}
.cmsg.in{opacity:1;transform:none}
.cmsg .who{display:block;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--dfaint);margin-bottom:8px}
.cmsg .tx{font-family:var(--sans);font-size:14px;line-height:1.55;color:#E4E2DC}
.cmsg .tx b{color:#fff;font-weight:600}
.cmsg .cf{color:var(--green-neon);font-weight:600}
.ctype{display:inline-flex;gap:5px;padding:3px 0}
.ctype i{width:6px;height:6px;border-radius:50%;background:var(--dfaint);animation:ctd 1.1s infinite}
.ctype i:nth-child(2){animation-delay:.16s}.ctype i:nth-child(3){animation-delay:.32s}
@keyframes ctd{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.cact{display:flex;gap:8px;margin-top:14px}
.cbtn{font-family:var(--sans);font-size:12px;font-weight:600;padding:8px 15px;border-radius:8px;cursor:pointer;border:1px solid transparent;transition:.18s}
.cbtn.ok{background:var(--accent);color:#1A1A17}.cbtn.ok:hover{filter:brightness(1.06)}
.cbtn.no{background:transparent;border-color:var(--dline-2);color:var(--dmut)}.cbtn.no:hover{color:var(--dtext);border-color:var(--dfaint)}
.cdone{display:none;align-items:center;gap:8px;margin-top:14px;font-family:var(--sans);font-size:12.5px;font-weight:500;color:var(--green-neon)}
.cdone svg{width:16px;height:16px;flex-shrink:0}
.cmsg.approved .cact,.cmsg.dismissed .cact{display:none}
.cmsg.approved .cdone{display:flex}
/* input: blue focus ring + square send, like the real panel */
.cop-input{display:flex;align-items:center;gap:8px;margin:8px 16px 16px}
.cop-input span{flex:1;padding:12px 14px;border:1px solid #2f6ab0;border-radius:9px;font-family:var(--sans);font-size:13px;color:var(--dfaint);background:rgba(47,106,176,.05)}
.cop-send{width:36px;height:36px;flex-shrink:0;border-radius:8px;background:rgba(47,106,176,.14);border:1px solid #2f6ab0;color:#8fb4e0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s}
.cop-send:hover{background:rgba(47,106,176,.24);color:#bcd6f2}
/* pillars */
.ai-pillars{display:flex;flex-direction:column;gap:14px}
.aip{display:flex;gap:15px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px 22px;transition:transform .18s,box-shadow .25s,border-color .25s}
.aip:hover{transform:translateY(-2px);box-shadow:var(--sh-card);border-color:var(--line-2)}
.aip .ic{width:40px;height:40px;flex-shrink:0;border-radius:11px;background:var(--cream);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink)}
.aip h3{font-family:var(--sans);font-size:1.04rem;margin-bottom:6px;color:var(--ink)}
.aip p{font-size:.92rem;line-height:1.55;color:var(--ink-2)}
.aip .tagm{display:inline-block;margin-top:10px;font-family:var(--mono);font-size:10px;color:var(--ink-3);background:var(--cream);border:1px solid var(--line);border-radius:6px;padding:4px 9px}
.ai-pillars .rv:nth-child(2){transition-delay:.08s}.ai-pillars .rv:nth-child(3){transition-delay:.16s}
/* MCP strip */
.mcp{margin-top:22px;background:var(--dark);border:1px solid var(--dline);border-radius:var(--r-xl);box-shadow:var(--sh-dark);display:grid;grid-template-columns:.82fr 1.18fr;gap:34px;padding:34px 36px;align-items:center}
.mcp-l .eyebrow{color:#E0C64A;margin-bottom:15px}
.mcp-l .eyebrow::before{background:var(--accent);box-shadow:0 0 0 4px rgba(254,237,2,.14)}
.mcp-l h3{font-family:var(--sans);font-size:1.5rem;color:#fff;letter-spacing:-.01em;margin-bottom:11px}
.mcp-l p{font-size:.96rem;line-height:1.6;color:var(--dmut);max-width:40ch}
.mcp-term{background:var(--dark-2);border:1px solid var(--dline);border-radius:var(--r-md);overflow:hidden}
.mcp-term .tbar{padding:11px 15px}
.mcp-code{font-family:var(--mono);font-size:12px;line-height:1.9;color:#C7C4BC;padding:16px 18px;overflow-x:auto;white-space:pre;margin:0}
.mcp-code .c1{color:var(--green-neon)}
.mcp-code .fl{color:var(--dfaint)}
.mcp-code .hl{color:var(--accent);font-weight:600}
.mcp-code .ok{color:var(--green-neon);font-weight:600}
@media(max-width:960px){.ai-grid{grid-template-columns:1fr;gap:20px}.cop{min-height:0}.mcp{grid-template-columns:1fr;gap:20px;padding:26px 24px}.mcp-l p{max-width:100%}}
/* standalone pages (mcp.html, demo.html): first section clears the fixed nav */
.pagetop{min-height:auto;padding-top:128px;padding-bottom:76px}
.mcp-cta{text-align:center;margin-top:40px}
.mcp-cta p{font-size:1.05rem;color:var(--ink-2);margin-bottom:16px}
.nav-links a.on{color:var(--ink);font-weight:600}

/* ============================================================ BENTO ============================================================ */
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.bx{border:1px solid var(--line);border-radius:var(--r-lg);padding:26px;background:var(--surface);transition:transform .18s,box-shadow .25s,border-color .25s;display:flex;flex-direction:column;min-height:196px}
.bx:hover{transform:translateY(-3px);box-shadow:var(--sh-card);border-color:var(--line-2)}
.bx .ic{width:42px;height:42px;border-radius:11px;background:var(--cream);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink);margin-bottom:14px}
.bx h3{font-family:var(--sans);font-size:1.12rem;margin-bottom:8px;color:var(--ink)}
.bx p{color:var(--ink-2);font-size:.95rem;flex-grow:1;line-height:1.5}
.bx .tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.tag{font-family:var(--sans);font-size:11px;font-weight:500;color:var(--ink-2);background:var(--cream);border:1px solid var(--line);padding:5px 10px;border-radius:100px}
.b-3{grid-column:span 3}.b-2{grid-column:span 2}
.bx.hi{background:var(--dark);border-color:var(--dline)}
.bx.hi h3{color:#fff}.bx.hi p{color:#BFBCB4}
.bx.hi .ic{background:var(--dsurf-2);border-color:var(--dline-2);color:var(--accent)}
.mini-match{margin-top:14px;font-family:var(--mono);font-size:11px;display:grid;gap:6px}
.mini-match .mm{display:flex;justify-content:space-between;gap:10px;padding:8px 11px;background:var(--dsurf);border:1px solid var(--dline);border-radius:8px;color:#CFCEC8}
.mini-match .mm b{color:var(--green-neon);font-weight:500}
@media(max-width:900px){.bento{grid-template-columns:repeat(2,1fr)}.b-3,.b-2{grid-column:span 1}.bx.hi{grid-column:span 2}}
@media(max-width:620px){.bento{grid-template-columns:1fr}.bx.hi{grid-column:span 1}}

/* ============================================================ BRAZIL ============================================================ */
.brazil{background:var(--cream);border-block:1px solid var(--line)}
.br-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.br{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px;box-shadow:var(--sh-card)}
.br .flag{font-family:var(--sans);font-size:11.5px;font-weight:600;color:var(--ink);background:var(--accent);display:inline-block;padding:5px 12px;border-radius:100px;margin-bottom:16px}
.br h3{font-family:var(--sans);font-size:1.3rem;margin-bottom:11px;color:var(--ink)}
.br p{color:var(--ink-2);line-height:1.55}
.br ul{list-style:none;margin-top:18px;display:grid;gap:10px}
.br li{display:flex;gap:10px;align-items:center;font-family:var(--sans);font-size:13.5px;color:var(--ink-2);font-weight:500}
.br li svg{color:var(--green);flex-shrink:0}
@media(max-width:760px){.br-grid{grid-template-columns:1fr}}

/* ============================================================ SEGMENTS ROUTER ============================================================ */
.seg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.segcard{border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;background:var(--surface);transition:transform .18s,box-shadow .25s,border-color .25s;display:flex;flex-direction:column}
.segcard:hover{transform:translateY(-3px);box-shadow:var(--sh-win);border-color:var(--line-2)}
.segcard .sk{font-family:var(--mono);font-size:11px;color:var(--ink-3);letter-spacing:.06em}
.segcard h3{font-family:var(--sans);font-size:1.3rem;color:var(--ink);margin:9px 0 10px}
.segcard p{font-size:.94rem;color:var(--ink-2);flex-grow:1;line-height:1.55}
.segcard .go{margin-top:18px;font-family:var(--sans);font-size:13.5px;font-weight:600;color:var(--ink);display:inline-flex;align-items:center;gap:7px}
.segnote{text-align:center;margin-top:22px;font-size:.95rem;color:var(--ink-3)}
.segnote a{color:var(--ink);font-weight:600;font-family:var(--sans);border-bottom:1px solid var(--line-2)}
@media(max-width:1000px){.seg-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.seg-grid{grid-template-columns:1fr}}

/* ============================================================ DIAGNOSTIC ============================================================ */
.roi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:36px;display:grid;grid-template-columns:1fr 1fr;gap:40px;box-shadow:var(--sh-card)}
.roi label{display:block;font-family:var(--sans);font-size:12.5px;font-weight:600;color:var(--ink-2);margin:18px 0 8px}
.roi label:first-child{margin-top:0}
.tg{display:flex;gap:8px}
.opt{flex:1;text-align:center;font-family:var(--sans);font-size:12.5px;font-weight:500;padding:11px 8px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;transition:.15s;line-height:1.3;color:var(--ink-2)}
.opt small{color:var(--ink-3);font-size:10.5px}
.opt.sel{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.opt.sel small{color:#B9B6AC}
.roi input{width:100%;font-family:var(--mono);font-size:15px;padding:12px 14px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);color:var(--ink)}
.roi input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(254,237,2,.28)}
.rout{display:flex;flex-direction:column;gap:14px}
.rc{background:var(--cream);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 20px}
.rc .k{font-family:var(--sans);font-size:11.5px;font-weight:600;color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase}
.rc .v{font-family:var(--sans);font-size:1.9rem;font-weight:700;color:var(--ink);letter-spacing:-.02em;margin-top:5px;line-height:1;font-variant-numeric:tabular-nums}
.rc .d{font-size:.9rem;color:var(--ink-2);margin-top:8px}
.expo{border-radius:var(--r-md);padding:18px 20px;border:1px solid}
.expo.baixa{background:var(--green-soft);border-color:rgba(18,161,80,.35)}
.expo.media{background:rgba(254,237,2,.12);border-color:rgba(254,237,2,.55)}
.expo.alta{background:var(--red-soft);border-color:rgba(219,75,67,.4)}
.expo .bg{font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.expo.baixa .bg{color:var(--green-dk)}.expo.media .bg{color:#8A7A00}.expo.alta .bg{color:#C13A33}
.expo h4{font-family:var(--sans);font-size:1.05rem;margin:7px 0;color:var(--ink)}
.expo p{font-size:.92rem;color:var(--ink-2);line-height:1.55}
@media(max-width:820px){.roi{grid-template-columns:1fr;gap:26px}}

/* ============================================================ OBJECTIONS ============================================================ */
.obj{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:start}
.cmp{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-card);background:var(--surface)}
table{width:100%;border-collapse:collapse;min-width:520px}
th,td{padding:13px 18px;text-align:left;font-size:.92rem;border-bottom:1px solid var(--line)}
thead th{font-family:var(--sans);font-size:12px;font-weight:600;color:var(--ink-3);background:var(--cream)}
thead th.w{color:var(--ink)}
tbody td{color:var(--ink-2)}
tbody td:first-child{font-family:var(--sans);font-weight:600;color:var(--ink);font-size:.86rem}
td.wc{background:rgba(254,237,2,.1);color:var(--ink);font-family:var(--sans);font-weight:600;font-size:.85rem}
.wintag{display:inline-block;font-family:var(--sans);font-size:10px;font-weight:700;color:var(--ink);background:var(--accent);padding:3px 8px;border-radius:100px;margin-left:7px;vertical-align:middle}
tr:last-child td{border-bottom:none}
.faq .q2{border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:10px;background:var(--surface);overflow:hidden}
.qh{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:14px;font-family:var(--sans);font-weight:600;font-size:.96rem;color:var(--ink)}
.qh .pm{flex-shrink:0;width:22px;height:22px;transition:transform .25s;color:var(--ink-3)}
.q2.open .pm{transform:rotate(45deg);color:var(--ink)}
.qb{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
.q2.open .qb{grid-template-rows:1fr}
.qb>div{overflow:hidden}
.qb p{padding:0 20px 18px;color:var(--ink-2);font-size:.96rem;line-height:1.6}
@media(max-width:860px){.obj{grid-template-columns:1fr;gap:34px}}

/* ============================================================ FORM ============================================================ */
.formsec{background:var(--cream);border-block:1px solid var(--line)}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.formsec h2{font-size:clamp(1.9rem,3.8vw,2.7rem);color:var(--ink)}
.ul{list-style:none;margin-top:26px;display:grid;gap:14px}
.ul li{display:flex;gap:12px;align-items:flex-start;color:var(--ink-2);font-size:1.02rem}
.ul svg{color:var(--green);flex-shrink:0;margin-top:4px}
.fcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:28px;box-shadow:var(--sh-win)}
.fcard h3{font-family:var(--sans);font-size:1.24rem;margin-bottom:5px;color:var(--ink)}
.fcard .fh{color:var(--ink-2);font-size:.94rem;margin-bottom:14px}
@media(max-width:900px){.fg{grid-template-columns:1fr;gap:32px}}

/* ============================================================ FINAL + FOOTER ============================================================ */
.final{background:var(--dark);color:#fff;text-align:center;overflow:hidden}
.final::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 55% 60% at 50% 12%,rgba(254,237,2,.16),transparent 66%)}
.final .container{position:relative;z-index:1}
.final .eyebrow{color:#8f8b81}
.final h2{color:#fff;font-size:clamp(2rem,4.4vw,3rem);max-width:20ch;margin:0 auto}
.final .lead{color:#B4B0A6;margin:20px auto 32px;max-width:52ch}
footer{background:var(--bg);border-top:1px solid var(--line);padding:64px 0 30px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:44px}
.foot-desc{color:var(--ink-2);max-width:36ch;margin:13px 0 20px;font-size:.96rem}
.foot h5{font-family:var(--sans);font-size:13.5px;font-weight:600;margin-bottom:15px;color:var(--ink)}
.foot ul{list-style:none;display:grid;gap:11px}
.foot a{font-family:var(--sans);font-size:14px;color:var(--ink-2)}
.foot a:hover{color:var(--ink)}
.social{display:flex;gap:10px}
.social a{width:38px;height:38px;border:1px solid var(--line-2);border-radius:100px;display:flex;align-items:center;justify-content:center;color:var(--ink-2)}
.social a:hover{border-color:var(--ink);color:var(--ink)}
.foot-b{border-top:1px solid var(--line);padding-top:22px;font-family:var(--sans);font-size:12.5px;color:var(--ink-3);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr;gap:28px}}

/* reveal + RD */
.rv{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s}
.rv.in{opacity:1;transform:none}
#formulario-lp-matcher-bfd87c140dcdd8faaa92{min-height:270px}
.rd-fb{font-family:var(--sans);font-size:13px;color:var(--ink-3);text-align:center;padding:26px 0}
/* ===== v5 life: bigger variance + resolve-to-zero + section reveals (power onward) ===== */
.variance{padding:38px}
.variance .vh{margin-bottom:22px;font-size:12px}
.vsrc{padding:16px 0}
.vsrc .vl{font-size:15.5px}
.vsrc .vv{font-size:14px}
.vnet{margin-top:22px}
.vnet .nl{font-size:1.25rem}
.vnet .nv{font-size:2.4rem;display:inline-block}
.variance .vsrc{opacity:0}
.variance.play .vsrc{animation:vin .55s ease forwards}
.variance.play .vsrc:nth-child(2){animation-delay:.05s}
.variance.play .vsrc:nth-child(3){animation-delay:.13s}
.variance.play .vsrc:nth-child(4){animation-delay:.21s}
.variance.play .vsrc:nth-child(5){animation-delay:.29s}
.variance.play .vsrc:nth-child(6){animation-delay:.37s}
@keyframes vin{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.variance .vtag{opacity:0}
.variance.play .vtag{animation:fadein .4s ease .5s forwards}
@keyframes fadein{from{opacity:0}to{opacity:1}}
.variance.play .vnet .nv{animation:netpop .7s .55s both}
@keyframes netpop{0%{transform:scale(.8);opacity:0}55%{transform:scale(1.1);opacity:1}100%{transform:scale(1)}}
.power h2{font-size:clamp(2.1rem,4.2vw,3rem)}
/* staggered reveals */
.bento .rv:nth-child(2){transition-delay:.06s}.bento .rv:nth-child(3){transition-delay:.12s}.bento .rv:nth-child(4){transition-delay:.18s}.bento .rv:nth-child(5){transition-delay:.24s}
.seg-grid .rv:nth-child(2){transition-delay:.09s}.seg-grid .rv:nth-child(3){transition-delay:.18s}
/* comparison winning column sweep */
.cmp.play td.wc{animation:wcin .55s both}
.cmp.play tbody tr:nth-child(1) td.wc{animation-delay:.04s}.cmp.play tbody tr:nth-child(2) td.wc{animation-delay:.10s}.cmp.play tbody tr:nth-child(3) td.wc{animation-delay:.16s}.cmp.play tbody tr:nth-child(4) td.wc{animation-delay:.22s}.cmp.play tbody tr:nth-child(5) td.wc{animation-delay:.28s}.cmp.play tbody tr:nth-child(6) td.wc{animation-delay:.34s}
@keyframes wcin{from{background:rgba(254,237,2,.45)}to{background:rgba(254,237,2,.1)}}
/* diagnostic result reveal */
.rout>*{opacity:0;transform:translateY(14px);transition:opacity .5s,transform .5s}
.roi.play .rout>*{opacity:1;transform:none}
.roi.play .rout>*:nth-child(2){transition-delay:.09s}.roi.play .rout>*:nth-child(3){transition-delay:.18s}

/* compact proof band (segment pages) */
.prova{padding:104px 0;text-align:center;background:var(--bg);position:relative;overflow:hidden}
.prova::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 55% 60% at 50% 22%,rgba(254,237,2,.10),transparent 66%)}
.prova .container{max-width:860px;position:relative;z-index:1}
.prova .eyebrow{justify-content:center;margin-bottom:20px;color:#8f8b81}
.prova .q{font-family:var(--sans);font-weight:700;font-size:clamp(1.4rem,2.8vw,2.05rem);color:var(--ink);letter-spacing:-.02em;line-height:1.3}
.prova cite{display:inline-block;font-style:normal;font-family:var(--mono);font-size:11.5px;color:var(--ink-2);margin-top:26px;letter-spacing:.03em;background:var(--surface);border:1px solid var(--line-2);border-radius:100px;padding:6px 14px}

/* proof stat (segment pages) */
.prova-stat{display:flex;flex-direction:column;align-items:center;gap:12px;margin:8px 0}
.prova .pn{font-family:var(--sans);font-weight:700;font-size:clamp(4rem,10vw,7rem);color:var(--ink);letter-spacing:-.04em;line-height:.9;position:relative;display:inline-block;font-variant-numeric:tabular-nums}
.prova .pn::after{content:"";position:absolute;left:-.02em;right:-.02em;bottom:.06em;height:.12em;background:var(--accent);z-index:-1;border-radius:3px}
.prova .pc{font-family:var(--sans);font-weight:500;font-size:clamp(1.05rem,2vw,1.35rem);color:var(--ink-2);max-width:40ch;line-height:1.45;margin:14px auto 0}
.prova-stat.rv{opacity:0;transform:scale(.68);transition:opacity .5s ease,transform .65s cubic-bezier(.2,.7,.3,1.35)}
.prova-stat.rv.in{opacity:1;transform:none}

/* RD form restyled to Lerian look */
#formulario-lp-matcher-bfd87c140dcdd8faaa92 input:not([type=checkbox]):not([type=radio]),
#formulario-lp-matcher-bfd87c140dcdd8faaa92 select,
#formulario-lp-matcher-bfd87c140dcdd8faaa92 textarea{width:100%!important;box-sizing:border-box!important;font-family:var(--sans)!important;font-size:14px!important;color:var(--ink)!important;background:var(--bg)!important;border:1px solid var(--line-2)!important;border-radius:9px!important;padding:12px 14px!important;box-shadow:none!important;margin:0!important}
#formulario-lp-matcher-bfd87c140dcdd8faaa92 input:focus,#formulario-lp-matcher-bfd87c140dcdd8faaa92 select:focus,#formulario-lp-matcher-bfd87c140dcdd8faaa92 textarea:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(254,237,2,.28)!important;outline:none!important}
#formulario-lp-matcher-bfd87c140dcdd8faaa92 label{font-family:var(--sans)!important;font-size:12.5px!important;font-weight:600!important;color:var(--ink-2)!important;margin-bottom:5px!important}
#formulario-lp-matcher-bfd87c140dcdd8faaa92 button,#formulario-lp-matcher-bfd87c140dcdd8faaa92 [type=submit]{width:100%!important;background:var(--accent)!important;color:var(--ink)!important;font-family:var(--sans)!important;font-weight:600!important;border:none!important;border-radius:9px!important;padding:14px 18px!important;font-size:15px!important;cursor:pointer!important;box-shadow:0 6px 20px -6px rgba(254,237,2,.7)!important;text-transform:none!important;letter-spacing:0!important}

/* custom Lerian form */
.lform{display:grid;gap:15px;margin-top:6px}
.lform .lf{display:block}
.lform label{font-family:var(--sans);font-size:12.5px;font-weight:600;color:var(--ink-2);display:block;margin-bottom:6px}
.lform input:not([type=checkbox]){width:100%;box-sizing:border-box;font-family:var(--sans);font-size:14px;color:var(--ink);background:var(--bg);border:1px solid var(--line-2);border-radius:9px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}
.lform input:not([type=checkbox])::placeholder{color:var(--ink-3)}
.lform input:not([type=checkbox]):focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(254,237,2,.28)}
.lform input.lf-error{border-color:var(--red);box-shadow:0 0 0 3px rgba(219,75,67,.18)}
.lf-row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lf-check{display:flex;gap:9px;align-items:flex-start;font-family:var(--sans);font-size:12.5px;font-weight:400;color:var(--ink-2);cursor:pointer;line-height:1.4}
.lf-check input{margin-top:3px;width:15px;height:15px;accent-color:var(--ink);flex-shrink:0}
.lf-submit{width:100%;margin-top:4px}
.lf-fine{font-family:var(--sans);font-size:11px;color:var(--ink-3);text-align:center;margin-top:2px;line-height:1.5}
.lf-ok{text-align:center;padding:30px 10px;font-family:var(--sans)}
.lf-ok .ic{width:52px;height:52px;border-radius:100px;background:var(--green-soft);color:var(--green-dk);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.lf-ok h4{font-family:var(--sans);font-size:1.2rem;color:var(--ink);margin-bottom:6px}
.lf-ok p{font-size:.95rem;color:var(--ink-2)}
@media(max-width:520px){.lf-row2{grid-template-columns:1fr}}

/* mobile nav (hamburger) */
.navtoggle{display:none;background:none;border:none;cursor:pointer;color:var(--ink);padding:6px;align-items:center}
@media(max-width:900px){
  .navtoggle{display:inline-flex}
  .nav-in>.btn-primary{margin-left:auto;margin-right:8px}
  .nav-links{display:flex;flex-direction:column;align-items:flex-start;gap:0;position:fixed;top:68px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--line);padding:10px 26px 20px;box-shadow:var(--sh-win);transform:translateY(-140%);transition:transform .28s ease;z-index:95}
  header.open .nav-links{transform:none}
  .nav-links>a{width:100%;padding:13px 0;font-size:16px;border-bottom:1px solid var(--line);color:var(--ink)}
  .navdrop{flex-direction:column;align-items:flex-start;width:100%}
  .navdrop-t{padding:13px 0;font-size:16px;pointer-events:none;color:var(--ink)}
  .navdrop-t svg{display:none}
  .navdrop-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;padding:2px 0 10px 12px;min-width:0;background:transparent;transition:none}
  .navdrop:hover .navdrop-menu,.navdrop:focus-within .navdrop-menu{transform:none}
  .navdrop-menu::before{display:none}
  .navdrop-menu a{padding:9px 0;font-size:14.5px}
}

@media(prefers-reduced-motion:reduce){*{animation-duration:.001s!important;transition-duration:.001s!important}.rv{opacity:1;transform:none}.trow{opacity:1;transform:none}.stage{opacity:1}.variance .vsrc,.variance .vtag,.rout>*{opacity:1;transform:none}.prova-stat.rv{opacity:1;transform:none}}

/* ============================================================
   MOBILE EXPERIENCE  (<=900px)   ·   desktop is untouched
   The scroll-driven entrance animations left whole sections blank
   on phones: content sat at opacity:0 waiting on IntersectionObserver
   while you flick-scrolled past, so bento/variance/diagnostico/proof
   flashed empty then popped in. On mobile we show everything up front
   (same spirit as prefers-reduced-motion) and keep the header CTA tidy.
   ============================================================ */
@media(max-width:900px){
  /* reveal-on-scroll content is always visible on mobile */
  .rv{opacity:1;transform:none}
  .stage{opacity:1}
  .variance .vsrc,.variance .vtag{opacity:1;animation:none}
  .variance.play .vnet .nv{animation:none}
  .vnet{flex-direction:column;align-items:flex-start;gap:4px}
  .vnet .nv{font-size:2rem;white-space:nowrap;line-height:1}
  .rout>*{opacity:1;transform:none}
  .prova-stat.rv{opacity:1;transform:none}
  /* header: keep the demo CTA on a single line, leave the logo room */
  .logo{font-size:18px}
  .nav-in>.btn-primary{padding:10px 15px;font-size:13.5px;white-space:nowrap}
}
@media(max-width:380px){
  .logo{font-size:16px}
  .nav-in>.btn-primary{padding:9px 12px;font-size:12.5px;margin-right:6px}
}

/* "Como funciona": the scroll-driven demo becomes a tap-to-switch stepper on
   mobile (scroll-driven stays desktop-only). Console pins, the tapped step
   swaps the console screen, and only the active step shows its description so
   the section reads clean instead of four full cards stacked at once. */
.flow-hint{display:none}
@media(max-width:960px){
  .flow-stages{order:1}
  .flow-sticky{position:relative;top:auto;z-index:auto;order:2}
  .flow-hint{display:block;font-family:var(--sans);font-size:12.5px;font-weight:500;color:var(--ink-3);text-align:center;margin:0 0 2px}
  .flow-stages .stage{cursor:pointer;-webkit-tap-highlight-color:transparent}
  .flow-stages .stage p{display:none;margin-top:0}
  .flow-stages .stage[data-on="1"] p{display:block;margin-top:8px}
}
