/* ============================================================
   BX GROUP — Design System
   Tipografia: Plus Jakarta Sans (títulos) + Nunito (corpo)
   Paleta: extraída dos logos oficiais
   ============================================================ */

:root{
  --ink:#2D3142;
  --ink-2:#3D4358;
  --ink-soft:#5A6178;
  --muted:#8A92A6;
  --line:#E8EBF2;
  --line-2:#F0F2F7;
  --bg:#F6F7FB;
  --bg-2:#FAFBFD;
  --paper:#FFFFFF;

  /* Marca-mãe BX Group */
  --bx-yellow:#F4C81B;
  --bx-yellow-d:#E0B616;
  --bx-green:#36B563;
  --bx-green-d:#28944D;

  /* Divisões */
  --finance:#5B57A8;
  --finance-2:#7570C4;
  --finance-light:#EEEDF7;
  --outsourcing:#F49423;
  --outsourcing-2:#FFB35E;
  --outsourcing-light:#FDF1E3;
  --certified:#4A78C2;
  --certified-2:#6E96D4;
  --certified-light:#E8EFF8;

  --radius:18px;
  --radius-sm:12px;
  --radius-lg:24px;
  --shadow-sm:0 1px 2px rgba(45,49,66,.04), 0 2px 8px rgba(45,49,66,.04);
  --shadow:0 4px 12px rgba(45,49,66,.06), 0 24px 48px rgba(45,49,66,.08);
  --shadow-lg:0 12px 32px rgba(45,49,66,.10), 0 40px 80px rgba(45,49,66,.12);
}

/* ============ RESET / BASE ============ */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:'Nunito',system-ui,-apple-system,sans-serif;
  color:var(--ink);background:var(--paper);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  line-height:1.55;font-weight:500;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{max-width:1240px;margin:0 auto;padding:0 28px}

/* ============ TIPOGRAFIA ============ */
h1,h2,h3,h4,h5{font-family:'Plus Jakarta Sans','Nunito',sans-serif;color:var(--ink);margin:0 0 16px;letter-spacing:-.02em;font-weight:800;line-height:1.1}
h1{font-size:clamp(40px,5.6vw,72px);letter-spacing:-.035em}
h2{font-size:clamp(30px,3.6vw,46px);letter-spacing:-.025em}
h3{font-size:22px;letter-spacing:-.015em;font-weight:700}
h4{font-size:18px;font-weight:700}
p{margin:0 0 14px;color:var(--ink-soft)}
.lead{font-size:19px;color:var(--ink-soft);line-height:1.6}

.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);font-weight:800;padding:6px 14px;border-radius:999px;background:rgba(244,200,27,.18);border:1px solid rgba(244,200,27,.4)}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--bx-yellow);box-shadow:0 0 12px var(--bx-yellow)}
.eyebrow.fin{background:rgba(91,87,168,.12);border-color:rgba(91,87,168,.35)}
.eyebrow.fin::before{background:var(--finance);box-shadow:0 0 12px var(--finance)}
.eyebrow.out{background:rgba(244,148,35,.14);border-color:rgba(244,148,35,.38)}
.eyebrow.out::before{background:var(--outsourcing);box-shadow:0 0 12px var(--outsourcing)}
.eyebrow.cer{background:rgba(74,120,194,.13);border-color:rgba(74,120,194,.36)}
.eyebrow.cer::before{background:var(--certified);box-shadow:0 0 12px var(--certified)}

/* ============ TOP BAR ============ */
.topbar{background:var(--ink);color:#fff;font-size:13px;font-weight:500}
.topbar .container{display:flex;justify-content:space-between;align-items:center;padding-top:10px;padding-bottom:10px;gap:24px}
.topbar a{opacity:.85;transition:opacity .15s}
.topbar a:hover{opacity:1}
.topbar .right{display:flex;gap:20px;align-items:center}
.topbar .pill{background:linear-gradient(135deg,var(--bx-yellow),var(--bx-yellow-d));color:var(--ink);padding:5px 12px;border-radius:999px;font-weight:800}

/* ============ NAV ============ */
.nav{position:sticky;top:0;background:rgba(255,255,255,.85);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid rgba(232,235,242,.7);z-index:100}
.nav .container{display:flex;align-items:center;justify-content:space-between;height:84px}
.brand-logo{height:42px;width:auto}
.menu{display:flex;gap:32px;align-items:center}
.menu a{font-size:15px;font-weight:700;color:var(--ink-2);transition:color .15s;position:relative}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--bx-yellow);transform:scaleX(0);transition:transform .2s;transform-origin:left}
.menu a:hover{color:var(--ink)}
.menu a:hover::after{transform:scaleX(1)}
.menu a.active{color:var(--ink)}
.menu a.active::after{transform:scaleX(1)}

/* ============ BOTÕES ============ */
.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:12px;font-weight:800;font-size:15px;transition:all .2s ease;border:1px solid transparent;cursor:pointer;font-family:'Nunito',sans-serif;text-decoration:none}
.btn-primary{background:var(--ink);color:#fff;box-shadow:0 4px 14px rgba(45,49,66,.2)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(45,49,66,.3)}
.btn .arrow{transition:transform .2s}
.btn:hover .arrow{transform:translateX(4px)}
.btn-yellow{background:linear-gradient(135deg,var(--bx-yellow) 0%,var(--bx-yellow-d) 100%);color:var(--ink);box-shadow:0 4px 14px rgba(244,200,27,.4)}
.btn-yellow:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(244,200,27,.5)}
.btn-ghost{background:#fff;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--ink);transform:translateY(-1px)}
.btn-light{background:#fff;color:var(--ink)}
.btn-fin{background:var(--finance);color:#fff;box-shadow:0 4px 14px rgba(91,87,168,.35)}
.btn-fin:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(91,87,168,.5)}
.btn-out{background:var(--outsourcing);color:#fff;box-shadow:0 4px 14px rgba(244,148,35,.35)}
.btn-out:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(244,148,35,.5)}
.btn-cer{background:var(--certified);color:#fff;box-shadow:0 4px 14px rgba(74,120,194,.35)}
.btn-cer:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(74,120,194,.5)}

/* ============ HERO (home) ============ */
.hero{position:relative;overflow:hidden;background:#fff;padding:60px 0 100px}
.hero-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.hero-bg::before{content:"";position:absolute;top:-20%;right:-15%;width:55%;height:120%;background:radial-gradient(closest-side,rgba(244,200,27,.18) 0%,transparent 70%);filter:blur(20px)}
.hero-bg::after{content:"";position:absolute;bottom:-30%;left:-10%;width:50%;height:100%;background:radial-gradient(closest-side,rgba(54,181,99,.14) 0%,transparent 70%);filter:blur(30px)}
.hero .container{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.hero h1 .accent{position:relative;display:inline-block}
.hero h1 .accent::after{content:"";position:absolute;left:-4px;right:-4px;bottom:6px;height:14px;background:var(--bx-yellow);z-index:-1;border-radius:4px;opacity:.55}
.hero h1 .dot{color:var(--bx-green)}
.hero .lead{margin-top:10px;max-width:560px}
.hero .ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.hero-stats{display:flex;gap:36px;margin-top:44px;padding-top:28px;border-top:1px solid var(--line);flex-wrap:wrap}
.hero-stats .item b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:32px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1}
.hero-stats .item span{font-size:13px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-top:6px;display:block}

.hero-visual{position:relative;perspective:1400px}
.brand-stack{display:grid;grid-template-columns:1fr;gap:16px}
.brand-tile{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px 22px;display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-height:140px;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;box-shadow:var(--shadow-sm)}
.brand-tile::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:var(--c);border-radius:20px 20px 0 0}
.brand-tile::after{content:"";position:absolute;bottom:-40%;right:-30%;width:180px;height:180px;border-radius:50%;background:var(--c);opacity:.08;filter:blur(20px);transition:opacity .3s}
.brand-tile:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.brand-tile:hover::after{opacity:.18}
.brand-tile img.bx-logo{height:34px;width:auto;object-fit:contain;align-self:flex-start}
.brand-tile .desc{font-size:13px;color:var(--ink-soft);font-weight:600;line-height:1.45}
.brand-tile .pill-c{align-self:flex-start;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--c) 12%,white);color:var(--c)}
.brand-tile.t1{--c:var(--finance);transform:rotate(-1.2deg)}
.brand-tile.t2{--c:var(--outsourcing);transform:rotate(.8deg)}
.brand-tile.t3{--c:var(--certified);transform:rotate(-.6deg)}
.brand-tile:hover{transform:translateY(-6px) rotate(0)!important}

.float-card{position:absolute;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:12px;font-weight:700;font-size:13.5px}
.float-card .ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;color:#fff;font-size:16px}
.float-card.fc1{top:-22px;left:-22px;animation:float 4.2s ease-in-out infinite}
.float-card.fc1 .ic{background:linear-gradient(135deg,var(--bx-green),var(--bx-green-d))}
.float-card.fc2{bottom:-22px;right:-22px;animation:float 4.2s ease-in-out -2s infinite}
.float-card.fc2 .ic{background:linear-gradient(135deg,var(--bx-yellow),var(--bx-yellow-d));color:var(--ink)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* ============ PAGE HEADER (subpáginas) ============ */
.page-hero{position:relative;overflow:hidden;padding:80px 0 100px;background:#fff}
/* Backgrounds mais sutis — só um toque de tom da empresa */
.page-hero.bg-fin{background:linear-gradient(160deg,#FAF9FC 0%,#fff 60%)}
.page-hero.bg-out{background:linear-gradient(160deg,#FDFAF4 0%,#fff 60%)}
.page-hero.bg-cer{background:linear-gradient(160deg,#F7F9FC 0%,#fff 60%)}
.page-hero::before{content:"";position:absolute;top:-20%;right:-10%;width:50%;height:120%;background:radial-gradient(closest-side,var(--glow,rgba(244,200,27,.12)) 0%,transparent 70%);filter:blur(40px);pointer-events:none}
/* Glow muito mais sutil */
.page-hero.bg-fin{--glow:rgba(91,87,168,.10)}
.page-hero.bg-out{--glow:rgba(244,148,35,.10)}
.page-hero.bg-cer{--glow:rgba(74,120,194,.10)}
.page-hero .container{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}
.page-hero .brand-logo-big{height:64px;width:auto;margin-bottom:24px}
.page-hero h1{font-size:clamp(36px,4.8vw,60px)}
.page-hero h1 em{font-style:normal}
.page-hero.bg-fin h1 em{color:var(--finance)}
.page-hero.bg-out h1 em{color:var(--outsourcing)}
.page-hero.bg-cer h1 em{color:var(--certified)}
.page-hero .lead{max-width:580px;font-size:19px}
.page-hero .ctas{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.page-hero .quick{display:flex;gap:28px;margin-top:36px;padding-top:28px;border-top:1px solid var(--line);flex-wrap:wrap}
.page-hero .quick .item b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:28px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1}
.page-hero .quick .item span{font-size:13px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-top:6px;display:block}

.page-hero-visual{position:relative;aspect-ratio:1;max-width:440px;margin:0 auto}
/* Shape do hero — clean institucional, com borda da cor da empresa em vez de fundo chapado */
.page-hero-shape{
  position:absolute;inset:0;border-radius:28px;
  background:linear-gradient(135deg,#fff 0%,#FAFBFD 100%);
  border:1px solid var(--line);
  box-shadow:0 20px 50px rgba(45,49,66,.08);
  overflow:hidden;display:grid;place-items:center;padding:40px;
}
.page-hero-shape::before{
  content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--c);
}
.page-hero-shape::after{
  content:"";position:absolute;bottom:-50%;right:-30%;width:90%;height:90%;border-radius:50%;
  background:radial-gradient(closest-side,color-mix(in srgb,var(--c) 18%,transparent),transparent 70%);
  filter:blur(20px);
}
.page-hero-shape img{
  position:relative;max-width:70%;height:auto;z-index:2;
  filter:none;opacity:1;
}
.page-hero-shape.s-fin{--c:var(--finance)}
.page-hero-shape.s-out{--c:var(--outsourcing)}
.page-hero-shape.s-cer{--c:var(--certified)}
.page-hero-badge{position:absolute;background:#fff;border-radius:16px;padding:14px 18px;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:12px;font-weight:800;font-size:13.5px;z-index:3}
.page-hero-badge .ic{width:38px;height:38px;border-radius:10px;background:var(--c);color:#fff;display:grid;place-items:center;font-size:16px}
.page-hero-badge.b1{top:-18px;left:-22px;animation:float 4s ease-in-out infinite}
.page-hero-badge.b2{bottom:-18px;right:-22px;animation:float 4s ease-in-out -2s infinite}

/* ============ TRUST BAR ============ */
.trust{padding:38px 0;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);border-top:1px solid var(--line)}
.trust .container{display:flex;align-items:center;gap:48px;flex-wrap:wrap}
.trust .label{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:800;max-width:170px;line-height:1.4}
.trust .logos{display:flex;gap:48px;flex-wrap:wrap;align-items:center;flex:1;justify-content:space-between}
.trust .logos span{font-family:'Plus Jakarta Sans',serif;font-weight:800;font-size:20px;color:var(--ink-soft);letter-spacing:.04em;opacity:.7;transition:opacity .2s}
.trust .logos span:hover{opacity:1}

/* ============ SEÇÕES ============ */
.section{padding:120px 0;position:relative;overflow:hidden}
.section.bg{background:var(--bg)}
.section.bg-dark{background:linear-gradient(135deg,var(--ink) 0%,#1A1E2E 50%,#252A40 100%);color:#fff}
.section.bg-dark h2,.section.bg-dark .eyebrow{color:#fff}
.section.bg-dark p{color:#C7CCDA}
.section-head{max-width:780px;margin:0 auto 64px;text-align:center}
.section-head .eyebrow{margin-bottom:18px}
.section-head p{font-size:18px}

/* ============ CORAÇÃO BX (Finance + Contábil) ============ */
.heart{padding:120px 0;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);position:relative;overflow:hidden}
.heart::before{content:"";position:absolute;top:30%;left:50%;transform:translateX(-50%);width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.18),transparent 70%);filter:blur(60px);pointer-events:none}
.heart .container{position:relative}
.heart-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:48px}
.heart-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:40px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}
.heart-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.heart-card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--c)}
.heart-card .label{display:inline-block;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--c);font-weight:800;padding:5px 12px;border-radius:999px;background:color-mix(in srgb,var(--c) 10%,white);margin-bottom:18px}
.heart-card h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:28px;line-height:1.15;margin-bottom:12px}
.heart-card .h-sub{font-size:16px;color:var(--ink-soft);line-height:1.55;margin-bottom:22px}
.heart-card .h-list{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-direction:column;gap:12px}
.heart-card .h-list li{font-size:14.5px;font-weight:600;color:var(--ink-2);padding-left:28px;position:relative}
.heart-card .h-list li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}
.heart-card .h-link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--c);padding-top:18px;border-top:1px solid var(--line);font-size:15px}
.heart-card .h-link .arr{transition:transform .2s;font-size:18px}
.heart-card:hover .h-link .arr{transform:translateX(4px)}
.heart-card.contab{--c:var(--outsourcing)}
.heart-card.financ{--c:var(--finance)}

/* ============ MANIFESTO / KPIs ============ */
.manifesto{padding:120px 0;background:var(--bg);position:relative;overflow:hidden}
.manifesto::before{content:"";position:absolute;top:20%;right:-5%;width:300px;height:300px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.2),transparent 70%);filter:blur(40px)}
.manifesto .container{position:relative}
.manifesto-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;align-items:start}
.manifesto h2{margin-bottom:24px}
.manifesto h2 em{font-style:normal;color:var(--finance);background:linear-gradient(120deg,var(--finance),var(--bx-green));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.kpis{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.kpi{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;position:relative;overflow:hidden;transition:transform .25s}
.kpi:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.kpi .n{font-family:'Plus Jakarta Sans',sans-serif;font-size:48px;font-weight:800;color:var(--ink);letter-spacing:-.03em;line-height:1}
.kpi .n .unit{color:var(--bx-green);font-size:32px}
.kpi .d{margin-top:10px;font-size:14px;color:var(--ink-soft);font-weight:600}
.kpi.k1{background:linear-gradient(135deg,var(--ink) 0%,#1F2333 100%);color:#fff;border:none}
.kpi.k1 .n,.kpi.k1 .d{color:#fff}
.kpi.k1 .n .unit{color:var(--bx-yellow)}

/* ============ DIVISÕES ============ */
.divisions{padding:120px 0;background:#fff}
.div-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.div-card{position:relative;border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);padding:36px;display:flex;flex-direction:column;gap:20px;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s;min-height:420px}
.div-card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--c)}
.div-card::after{content:"";position:absolute;bottom:-60%;right:-30%;width:420px;height:420px;border-radius:50%;background:radial-gradient(closest-side,var(--c) 0%,transparent 70%);opacity:.10;pointer-events:none;transition:opacity .3s}
.div-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.div-card:hover::after{opacity:.18}
.div-card .head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.div-card .head img{height:48px;width:auto}
.div-card .num{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;color:var(--c);letter-spacing:.12em}
.div-card .title{font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.2}
.div-card .sub{font-size:15px;color:var(--ink-soft);line-height:1.6;font-weight:500}
.div-card .features{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 0;padding:0;list-style:none}
.div-card .features li{font-size:13px;font-weight:700;color:var(--ink-2);padding:7px 14px;border-radius:999px;background:color-mix(in srgb,var(--c) 9%,white);border:1px solid color-mix(in srgb,var(--c) 22%,white)}
.div-card .cta-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;border-top:1px solid var(--line);margin-top:auto}
.div-card .cta-row a{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:14.5px;color:var(--c)}
.div-card .cta-row a .arr{transition:transform .2s;font-size:18px}
.div-card:hover .cta-row a .arr{transform:translateX(4px)}
.div-card .cta-row .price{font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.div-card.c-fin{--c:var(--finance)}
.div-card.c-out{--c:var(--outsourcing)}
.div-card.c-cer{--c:var(--certified)}

/* ============ SEGMENTOS / PARA QUEM ============ */
.segments-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}
.segment{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 22px;text-align:left;transition:transform .2s,border-color .2s,box-shadow .2s}
.segment:hover{transform:translateY(-4px);border-color:var(--bx-yellow);box-shadow:var(--shadow)}
.segment .seg-ic{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--bx-yellow),var(--bx-yellow-d));display:grid;place-items:center;font-size:22px;color:var(--ink);font-weight:800;margin-bottom:16px;font-family:'Plus Jakarta Sans',sans-serif}
.segment h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:17px;margin:0 0 6px}
.segment p{font-size:13.5px;color:var(--ink-soft);margin:0;line-height:1.5}

/* ============ ECOSSISTEMA ============ */
.ecosystem{padding:120px 0;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);position:relative;overflow:hidden}
.ecosystem-wrap{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.ecosystem h2 span{color:var(--bx-green)}
.pillars{display:flex;flex-direction:column;gap:20px;margin-top:36px}
.pillar{display:flex;gap:20px;align-items:flex-start;padding:24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);transition:transform .2s,border-color .2s}
.pillar:hover{transform:translateX(6px);border-color:var(--bx-yellow)}
.pillar .ic{flex-shrink:0;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--bx-yellow),var(--bx-yellow-d));display:grid;place-items:center;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:18px;color:var(--ink)}
.pillar h3{margin:0 0 6px;font-size:18px}
.pillar p{margin:0;font-size:14.5px;color:var(--ink-soft)}

.eco-visual{position:relative;aspect-ratio:1;max-width:520px;margin:0 auto}
.eco-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:170px;height:170px;border-radius:50%;background:linear-gradient(135deg,var(--ink) 0%,#1F2333 100%);display:grid;place-items:center;box-shadow:0 30px 60px rgba(45,49,66,.3), inset 0 0 0 8px rgba(244,200,27,.15);z-index:5;padding:16px}
.eco-center img{height:44px;width:auto;filter:brightness(0) invert(1)}
.eco-orbit{position:absolute;inset:0;border:2px dashed rgba(45,49,66,.12);border-radius:50%;animation:spin 50s linear infinite}
.eco-orbit.o2{inset:50px;border-color:rgba(45,49,66,.08)}
@keyframes spin{to{transform:rotate(360deg)}}
.eco-sat{position:absolute;width:120px;height:120px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:var(--shadow-lg);border:3px solid var(--c);padding:16px;z-index:6}
.eco-sat img{height:32px;width:auto;object-fit:contain}
.eco-sat.s1{--c:var(--finance);top:6%;left:50%;transform:translateX(-50%)}
.eco-sat.s2{--c:var(--outsourcing);bottom:10%;right:8%}
.eco-sat.s3{--c:var(--certified);bottom:10%;left:8%}

/* ============ METODOLOGIA ============ */
.method{padding:120px 0;background:#fff;position:relative}
.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:64px;position:relative}
.method-grid::before{content:"";position:absolute;top:32px;left:8%;right:8%;height:2px;background:linear-gradient(90deg,var(--finance) 0%,var(--bx-yellow) 33%,var(--outsourcing) 66%,var(--certified) 100%);opacity:.2;z-index:0}
.step{position:relative;text-align:left;z-index:1}
.step .step-num{width:64px;height:64px;border-radius:50%;background:#fff;border:2px solid var(--c,var(--bx-yellow));color:var(--c,var(--ink));font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;font-weight:800;display:grid;place-items:center;margin-bottom:20px;box-shadow:0 8px 24px rgba(45,49,66,.08)}
.step.s1{--c:var(--finance)}
.step.s2{--c:var(--bx-yellow-d)}
.step.s3{--c:var(--outsourcing)}
.step.s4{--c:var(--certified)}
.step h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;margin-bottom:8px}
.step p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.55}

/* ============ TECNOLOGIA ============ */
.tech{padding:120px 0;background:var(--bg);position:relative;overflow:hidden}
.tech::before{content:"";position:absolute;top:-20%;left:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,rgba(91,87,168,.12),transparent 70%);filter:blur(40px)}
.tech .container{position:relative}
.tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}
.tech-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.tech-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.tech-card .tech-ic{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,var(--c) 0%,color-mix(in srgb,var(--c) 60%,#1A1E2E) 100%);display:grid;place-items:center;color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;margin-bottom:18px}
.tech-card h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:20px;margin-bottom:8px}
.tech-card p{font-size:14.5px;color:var(--ink-soft);margin:0 0 16px;line-height:1.55}
.tech-card .tech-tag{display:inline-block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--c) 10%,white);color:var(--c)}
.tech-card.t1{--c:var(--outsourcing)}
.tech-card.t2{--c:var(--finance)}
.tech-card.t3{--c:var(--certified)}
.tech-card.t4{--c:var(--bx-green-d)}

/* ============ CASES ============ */
.cases{padding:120px 0;background:linear-gradient(135deg,var(--ink) 0%,#1A1E2E 50%,#252A40 100%);color:#fff;position:relative;overflow:hidden}
.cases::before{content:"";position:absolute;top:-20%;right:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.15),transparent 70%);filter:blur(40px)}
.cases::after{content:"";position:absolute;bottom:-20%;left:-10%;width:500px;height:500px;border-radius:50%;background:radial-gradient(closest-side,rgba(54,181,99,.12),transparent 70%);filter:blur(40px)}
.cases .container{position:relative}
.cases h2{color:#fff}
.cases .section-head p{color:#C7CCDA}
.cases .eyebrow{background:rgba(244,200,27,.15);color:#fff;border-color:rgba(244,200,27,.3)}
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.case{background:linear-gradient(180deg,rgba(255,255,255,.06) 0%,rgba(255,255,255,.02) 100%);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;gap:14px;backdrop-filter:blur(10px);transition:transform .3s,border-color .3s}
.case:hover{transform:translateY(-6px);border-color:rgba(244,200,27,.4)}
.case .tag{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bx-yellow);font-weight:800;width:fit-content}
.case .tag::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--bx-yellow)}
.case .num{font-family:'Plus Jakarta Sans',sans-serif;font-size:54px;font-weight:800;color:#fff;line-height:1;letter-spacing:-.03em;margin:6px 0}
.case .desc{color:#C7CCDA;font-size:15px;line-height:1.6}
.case .divref{margin-top:auto;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);font-size:12.5px;color:#8A92A6;font-weight:700;text-transform:uppercase;letter-spacing:.08em}

/* ============ DEPOIMENTOS ============ */
.testim{padding:120px 0;background:#fff;position:relative;overflow:hidden}
.testim-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}
.testim-card{background:linear-gradient(180deg,#fff,var(--bg-2));border:1px solid var(--line);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;gap:18px;position:relative;transition:transform .25s,box-shadow .25s}
.testim-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.testim-card::before{content:"";position:absolute;top:24px;right:28px;width:38px;height:30px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 18' fill='%23F4C81B' opacity='.5'><path d='M0 18V9q0-3.75 2.625-6.375T9 0v3q-2.25 0-3.75 1.5T3.75 9H9v9zm15 0V9q0-3.75 2.625-6.375T24 0v3q-2.25 0-3.75 1.5t-1.5 4.5H24v9z'/></svg>") no-repeat center/contain}
.testim-card .quote{font-size:16px;color:var(--ink-2);line-height:1.65;font-weight:500;font-style:italic}
.testim-card .who{display:flex;align-items:center;gap:14px;padding-top:18px;border-top:1px solid var(--line);margin-top:auto}
.testim-card .avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--c),color-mix(in srgb,var(--c) 60%,#1A1E2E));color:#fff;display:grid;place-items:center;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:18px;flex-shrink:0}
.testim-card .who-info b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;color:var(--ink)}
.testim-card .who-info span{font-size:13px;color:var(--ink-soft);font-weight:600}
.testim-card.tc1{--c:var(--finance)}
.testim-card.tc2{--c:var(--outsourcing)}
.testim-card.tc3{--c:var(--certified)}

/* ============ CALENDAR ============ */
.calendar{padding:120px 0;background:#fff;position:relative;overflow:hidden}
.cal-wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:center}
.cal-card{background:linear-gradient(180deg,#fff 0%,#FAFBFD 100%);border:1px solid var(--line);border-radius:24px;padding:36px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.cal-card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--bx-yellow),var(--bx-green))}
.cal-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.cal-head h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:28px;margin:0;letter-spacing:-.02em}
.cal-head .month-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:46px;font-weight:800;color:var(--bx-yellow);line-height:1;letter-spacing:-.04em}
.cal-list{display:flex;flex-direction:column}
.cal-row{display:grid;grid-template-columns:72px 1fr auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line-2)}
.cal-row:last-child{border-bottom:none}
.cal-date{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;text-align:center;background:var(--bg);border-radius:12px;padding:10px 4px}
.cal-date .d{font-size:24px;color:var(--ink);line-height:1;letter-spacing:-.02em}
.cal-date .w{display:block;font-size:11px;text-transform:uppercase;color:var(--muted);font-weight:700;margin-top:4px;letter-spacing:.06em}
.cal-title{font-size:15.5px;font-weight:800;color:var(--ink);margin:0 0 3px}
.cal-sub{font-size:13px;color:var(--ink-soft);font-weight:500}
.cal-tag{font-size:11px;font-weight:800;padding:5px 11px;border-radius:999px;background:rgba(91,87,168,.10);color:var(--finance);letter-spacing:.08em;text-transform:uppercase}
.cal-tag.estadual{background:rgba(244,148,35,.12);color:var(--outsourcing)}

/* ============ FAQ ============ */
.faq{padding:120px 0;background:var(--bg)}
.faq-wrap{max-width:820px;margin:48px auto 0;display:flex;flex-direction:column;gap:14px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq-item[open]{border-color:var(--bx-yellow);box-shadow:var(--shadow-sm)}
.faq-item summary{padding:22px 26px;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:17px;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:28px;color:var(--bx-yellow-d);font-weight:800;transition:transform .2s;line-height:1;flex-shrink:0}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item .a{padding:0 26px 24px;font-size:15px;color:var(--ink-soft);line-height:1.65}

/* ============ CONTENT / POSTS ============ */
.content{padding:120px 0;background:var(--bg)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.post:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.post .cover{aspect-ratio:16/10;position:relative;overflow:hidden}
.post .cover.c1{background:linear-gradient(135deg,#E8E6F5 0%,#C8C4E8 50%,var(--finance) 200%)}
.post .cover.c2{background:linear-gradient(135deg,#FDE9D1 0%,#F9C887 50%,var(--outsourcing) 200%)}
.post .cover.c3{background:linear-gradient(135deg,#DCE6F4 0%,#B0C5E2 50%,var(--certified) 200%)}
.post .cover::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 70%,rgba(255,255,255,.4),transparent 60%)}
.post .body{padding:26px;display:flex;flex-direction:column;gap:10px;flex:1}
.post .tag{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;width:fit-content;padding:4px 10px;border-radius:999px}
.post.p1 .tag{color:var(--finance);background:rgba(91,87,168,.1)}
.post.p2 .tag{color:var(--outsourcing);background:rgba(244,148,35,.12)}
.post.p3 .tag{color:var(--certified);background:rgba(74,120,194,.12)}
.post h3{margin:6px 0 6px;font-family:'Plus Jakarta Sans',sans-serif;font-size:20px;line-height:1.3}
.post p{font-size:14.5px;margin:0}
.post .meta{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);font-weight:700;margin-top:auto}

/* ============ TABELA COMPARATIVA ============ */
.compare-wrap{margin-top:48px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}
.compare{width:100%;border-collapse:collapse;font-size:14.5px}
.compare th,.compare td{padding:18px 22px;text-align:left;border-bottom:1px solid var(--line-2)}
.compare thead th{background:var(--bg);font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;color:var(--ink);font-size:14px;text-transform:uppercase;letter-spacing:.08em}
.compare tbody tr:last-child td{border-bottom:none}
.compare tbody td:first-child{font-weight:700;color:var(--ink)}
.compare tbody td{color:var(--ink-soft)}
.compare .check{color:var(--bx-green-d);font-weight:800}
.compare .cross{color:#C0392B;font-weight:800}

/* ============ SERVIÇOS GRID (subpáginas) ============ */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}
.svc-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;transition:transform .25s,border-color .25s,box-shadow .25s}
.svc-card:hover{transform:translateY(-4px);border-color:var(--c);box-shadow:var(--shadow)}
.svc-card .svc-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:32px;font-weight:800;color:var(--c);line-height:1;letter-spacing:-.04em;margin-bottom:14px}
.svc-card h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:18px;margin-bottom:8px;line-height:1.3}
.svc-card p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.55}
.svc-grid.fin .svc-card{--c:var(--finance)}
.svc-grid.out .svc-card{--c:var(--outsourcing)}
.svc-grid.cer .svc-card{--c:var(--certified)}

/* ============ BREADCRUMB ============ */
.crumb{padding:18px 0;background:var(--bg);border-bottom:1px solid var(--line);font-size:13.5px;color:var(--ink-soft);font-weight:600}
.crumb a{color:var(--ink-soft)}
.crumb a:hover{color:var(--ink)}
.crumb .sep{margin:0 10px;color:var(--muted)}
.crumb b{color:var(--ink);font-weight:800}

/* ============ CTA ============ */
.cta{padding:120px 0;background:linear-gradient(135deg,var(--ink) 0%,#1A1E2E 100%);color:#fff;position:relative;overflow:hidden}
/* CTAs das subpáginas — base institucional escura com toque da empresa */
.cta.bg-fin{background:linear-gradient(135deg,#1F1E2E 0%,#2D2B4A 60%,#3D3A7A 100%)}
.cta.bg-out{background:linear-gradient(135deg,#1F1E1A 0%,#3A2E1E 60%,#7A4F1A 100%)}
.cta.bg-cer{background:linear-gradient(135deg,#1A1E2E 0%,#22324C 60%,#33588C 100%)}
.cta::before{content:"";position:absolute;top:-30%;right:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.18),transparent 70%);filter:blur(40px)}
.cta::after{content:"";position:absolute;bottom:-30%;left:-10%;width:500px;height:500px;border-radius:50%;background:radial-gradient(closest-side,rgba(54,181,99,.14),transparent 70%);filter:blur(40px)}
.cta .container{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.cta h2{color:#fff;font-size:clamp(34px,4.2vw,52px);margin-bottom:20px;line-height:1.1}
.cta h2 em{font-style:normal;background:linear-gradient(120deg,var(--bx-yellow),var(--bx-green));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.cta p{color:#C7CCDA;font-size:17px;line-height:1.6}
.cta .contacts{display:flex;flex-direction:column;gap:14px;margin-top:32px}
.cta .contacts .row{display:flex;align-items:center;gap:14px;font-size:15px}
.cta .contacts .ic{width:42px;height:42px;border-radius:12px;background:rgba(244,200,27,.18);display:grid;place-items:center;color:var(--bx-yellow);font-weight:800;font-size:16px;flex-shrink:0}
.cta .contacts b{color:#fff;font-weight:800}
.cta-form{background:#fff;color:var(--ink);padding:36px;border-radius:24px;box-shadow:0 30px 60px rgba(0,0,0,.3)}
.cta-form h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;margin:0 0 6px}
.cta-form .sub{font-size:14px;color:var(--ink-soft);margin:0 0 22px}
.cta-form label{display:block;font-size:13px;font-weight:800;color:var(--ink-2);margin-bottom:6px}
.cta-form input,.cta-form select,.cta-form textarea{width:100%;padding:13px 14px;border:1.5px solid var(--line);border-radius:10px;font:inherit;font-size:14.5px;background:#fff;color:var(--ink);font-family:'Nunito',sans-serif;transition:border-color .15s,box-shadow .15s}
.cta-form input:focus,.cta-form select:focus,.cta-form textarea:focus{outline:none;border-color:var(--bx-yellow);box-shadow:0 0 0 4px rgba(244,200,27,.18)}
.cta-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.cta-form .field{margin-bottom:14px}
.cta-form button{width:100%;justify-content:center;font-size:16px;padding:15px 22px;margin-top:6px}
.cta-form .legal{font-size:11.5px;color:var(--muted);margin-top:12px;text-align:center}
.cta-form .legal a{color:var(--finance);font-weight:700}

/* ============ FOOTER ============ */
footer{background:#1A1E2E;color:#C7CCDA;padding:80px 0 32px}
footer .grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1.3fr;gap:40px;margin-bottom:56px}
footer h5{font-family:'Plus Jakarta Sans',sans-serif;color:#fff;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;font-weight:800}
footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
footer a{color:#C7CCDA;font-size:14.5px;font-weight:600;transition:color .15s}
footer a:hover{color:var(--bx-yellow)}
footer .brand-foot img{height:44px;filter:brightness(0) invert(1);margin-bottom:18px}
footer .desc{font-size:14px;color:#8A92A6;line-height:1.6;max-width:320px}
footer .social{display:flex;gap:10px;margin-top:22px}
footer .social a{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.06);display:grid;place-items:center;color:#fff;font-size:13px;font-weight:800;transition:background .15s,transform .15s}
footer .social a:hover{background:var(--bx-yellow);color:var(--ink);transform:translateY(-2px)}
footer .bottom{padding-top:28px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:20px;font-size:13.5px;color:#8A92A6;flex-wrap:wrap}
footer .bottom .links{display:flex;gap:24px}

/* ============================================================
   COMPONENTES INSTITUCIONAIS (homepage corporativa)
   ============================================================ */

/* ---- Hero institucional ---- */
.ihero{position:relative;overflow:hidden;background:#fff;padding:90px 0 110px}
.ihero::before{content:"";position:absolute;top:0;right:0;width:50%;height:100%;background:linear-gradient(180deg,#FAFBFD 0%,#fff 100%);z-index:0}
.ihero::after{content:"";position:absolute;top:10%;right:-5%;width:520px;height:520px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.14),transparent 70%);filter:blur(40px);z-index:0}
.ihero .container{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:center}
.ihero .eyebrow-inst{display:inline-flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);font-weight:800;margin-bottom:28px}
.ihero .eyebrow-inst::before{content:"";width:32px;height:2px;background:var(--bx-yellow)}
.ihero h1{font-size:clamp(40px,5.4vw,68px);line-height:1.04;letter-spacing:-.035em;margin-bottom:28px}
.ihero h1 .accent-line{position:relative;display:inline-block;color:var(--ink)}
.ihero h1 .accent-line::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:12px;background:var(--bx-yellow);z-index:-1;border-radius:3px;opacity:.6}
.ihero .lead{font-size:19px;color:var(--ink-soft);line-height:1.65;max-width:620px;margin-bottom:36px;font-weight:500}
.ihero .ihero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px}
.ihero-side{position:relative}
.ihero-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.ihero-card::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--outsourcing) 0%,var(--bx-yellow) 50%,var(--finance) 100%)}
.ihero-card h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 6px;font-weight:800}
.ihero-card .h-quote{font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;line-height:1.4;color:var(--ink);margin:18px 0 22px;font-weight:600;letter-spacing:-.015em}
.ihero-card .h-quote span{color:var(--bx-yellow-d);font-weight:800}
.ihero-card .h-author{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid var(--line)}
.ihero-card .h-avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--ink),#1F2333);color:#fff;display:grid;place-items:center;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:17px;flex-shrink:0}
.ihero-card .h-author b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:14.5px;color:var(--ink);font-weight:800}
.ihero-card .h-author span{font-size:12.5px;color:var(--ink-soft);font-weight:600}
.ihero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);padding-top:36px;position:relative;z-index:1}
.ihero-stats .item{padding-right:24px;border-right:1px solid var(--line)}
.ihero-stats .item:last-child{border-right:none;padding-right:0}
.ihero-stats .item:first-child{padding-right:24px}
.ihero-stats .item b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:36px;font-weight:800;color:var(--ink);letter-spacing:-.025em;line-height:1}
.ihero-stats .item b .u{color:var(--bx-yellow-d);font-size:24px;margin-left:2px}
.ihero-stats .item span{font-size:12.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-top:8px;display:block}

/* ---- Trust bar institucional ---- */
.trust-inst{padding:42px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.trust-inst .container{display:flex;align-items:center;gap:60px;flex-wrap:wrap}
.trust-inst .label{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:800;max-width:200px;line-height:1.4}
.trust-inst .logos{display:flex;gap:50px;flex-wrap:wrap;align-items:center;flex:1;justify-content:space-between}
.trust-inst .logos{gap:14px;justify-content:flex-end}
.trust-inst .logo-mark{
  display:inline-flex;align-items:center;gap:9px;
  padding:9px 16px;
  background:#fff;border:1px solid var(--line);border-radius:8px;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:13.5px;
  color:var(--ink-soft);letter-spacing:-.005em;text-transform:none;
  opacity:.78;transition:opacity .2s,border-color .2s,transform .2s;cursor:default;
}
.trust-inst .logo-mark::before{
  content:"";width:8px;height:8px;border-radius:2px;flex-shrink:0;
  background:linear-gradient(135deg,var(--bx-yellow),var(--bx-green));
}
.trust-inst .logo-mark:hover{opacity:1;border-color:rgba(45,49,66,.15);transform:translateY(-1px)}

/* ---- Section header institucional ---- */
.sec-head{max-width:820px;margin:0 auto 64px;text-align:center}
.sec-head.left{margin-left:0;text-align:left}
.sec-eyebrow{display:inline-flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);font-weight:800;margin-bottom:20px}
.sec-eyebrow::before{content:"";width:32px;height:2px;background:var(--bx-yellow)}
.sec-eyebrow.dark::before{background:var(--bx-yellow)}
.sec-eyebrow.dark{color:#fff}
.sec-eyebrow.fin::before{background:var(--finance)}
.sec-eyebrow.out::before{background:var(--outsourcing)}
.sec-eyebrow.cer::before{background:var(--certified)}

/* ---- Tese / manifesto ---- */
.thesis{padding:130px 0;background:#fff;position:relative;overflow:hidden}
.thesis::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:900px;height:900px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.07),transparent 70%);pointer-events:none}
.thesis .container{position:relative;max-width:1080px}
.thesis h2{font-size:clamp(34px,4.4vw,54px);text-align:center;max-width:920px;margin:0 auto 56px;line-height:1.12;letter-spacing:-.03em}
.thesis h2 em{font-style:normal;background:linear-gradient(120deg,var(--outsourcing) 0%,var(--bx-yellow-d) 50%,var(--finance) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.thesis-body{columns:2;column-gap:48px;font-size:17px;line-height:1.75;color:var(--ink-2);font-weight:500}
.thesis-body p{margin:0 0 18px;break-inside:avoid;color:var(--ink-2)}
.thesis-body p:first-child::first-letter{font-family:'Plus Jakarta Sans',sans-serif;font-size:64px;font-weight:800;float:left;line-height:.85;margin:6px 12px 0 -2px;color:var(--bx-yellow-d)}
.thesis-sign{display:flex;align-items:center;gap:16px;margin-top:36px;padding-top:36px;border-top:1px solid var(--line);max-width:560px;margin-left:auto;margin-right:auto}
.thesis-sign .sig-name{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;color:var(--ink);font-size:15px}
.thesis-sign .sig-role{font-size:13px;color:var(--ink-soft);font-weight:600;display:block;margin-top:2px}

/* ---- Split pillars (dois especialistas) ---- */
.split{padding:130px 0;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);position:relative;overflow:hidden}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:64px;position:relative}
.split-grid::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:linear-gradient(180deg,transparent 0%,var(--line) 20%,var(--line) 80%,transparent 100%);transform:translateX(-50%);pointer-events:none}
.split-side{background:#fff;border:1px solid var(--line);border-radius:24px;padding:44px;position:relative;overflow:hidden;transition:transform .35s,box-shadow .35s;display:flex;flex-direction:column;gap:24px}
.split-side:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.split-side::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--c)}
.split-side::after{content:"";position:absolute;bottom:-50%;right:-30%;width:380px;height:380px;border-radius:50%;background:radial-gradient(closest-side,var(--c),transparent 70%);opacity:.08;transition:opacity .3s}
.split-side:hover::after{opacity:.15}
.split-side .s-head{display:flex;justify-content:space-between;align-items:center;gap:20px}
.split-side .s-head img{height:44px;width:auto}
.split-side .s-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;color:var(--c);letter-spacing:.16em}
.split-side .s-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--c);padding:6px 12px;border-radius:999px;background:color-mix(in srgb,var(--c) 10%,white);width:fit-content}
.split-side h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:30px;line-height:1.15;letter-spacing:-.025em;margin:0}
.split-side .s-pitch{font-size:16px;color:var(--ink-2);line-height:1.65;margin:0;font-weight:500}
.split-side .s-pitch b{color:var(--ink);font-weight:800}
.split-side .s-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.split-side .s-list li{font-size:14.5px;color:var(--ink-2);padding-left:24px;position:relative;font-weight:600;line-height:1.5}
.split-side .s-list li::before{content:"";position:absolute;left:0;top:9px;width:10px;height:2px;background:var(--c)}
.split-side .s-quote{margin-top:auto;padding:22px;background:color-mix(in srgb,var(--c) 5%,white);border-left:3px solid var(--c);border-radius:0 12px 12px 0;font-size:15px;line-height:1.6;color:var(--ink-2);font-style:italic}
.split-side .s-quote .s-who{display:block;margin-top:10px;font-style:normal;font-size:12.5px;font-weight:800;color:var(--ink);text-transform:uppercase;letter-spacing:.06em}
.split-side .s-cta{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--c);padding-top:18px;border-top:1px solid var(--line);font-size:15px}
.split-side .s-cta .arr{transition:transform .2s;font-size:18px}
.split-side:hover .s-cta .arr{transform:translateX(4px)}
.split-side.l-out{--c:var(--outsourcing)}
.split-side.l-fin{--c:var(--finance)}

/* ---- Indústrias (text-heavy cards) ---- */
.industries{padding:130px 0;background:var(--bg)}
.ind-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px}
.ind-card{
  background:#fff;border:1px solid var(--line);border-radius:18px;
  padding:0;display:flex;flex-direction:column;
  transition:transform .25s,border-color .25s,box-shadow .25s;
  position:relative;overflow:hidden;
}
.ind-card:hover{transform:translateY(-4px);border-color:rgba(45,49,66,.15);box-shadow:0 16px 36px rgba(45,49,66,.08)}

/* HEAD do card — ícone + nome do setor */
.ind-card-head{
  padding:22px 24px 18px;display:flex;align-items:center;gap:14px;
  border-bottom:1px solid var(--line);background:#fff;
}
.ind-card-head .ind-ic{
  width:46px;height:46px;border-radius:12px;
  background:linear-gradient(135deg,#FAFBFD,#fff);border:1px solid var(--line);
  display:grid;place-items:center;font-size:22px;flex-shrink:0;margin:0;
}
.ind-card-head h4{
  margin:0;font-family:'Plus Jakarta Sans',sans-serif;
  font-size:19px;letter-spacing:-.015em;line-height:1.15;color:var(--ink);
}

/* SPLIT — duas seções coloridas dentro de cada card */
.ind-card-split{display:flex;flex-direction:column;flex:1}

.ind-section{
  padding:18px 24px;display:flex;flex-direction:column;gap:10px;flex:1;
}
.ind-section.ind-out{
  background:linear-gradient(180deg,rgba(244,148,35,.07) 0%,rgba(244,148,35,.02) 100%);
  border-bottom:1px solid var(--line);
}
.ind-section.ind-fin{
  background:linear-gradient(180deg,rgba(91,87,168,.04) 0%,rgba(91,87,168,.08) 100%);
}

.ind-section-label{
  display:inline-flex;align-items:center;gap:9px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;
  text-transform:uppercase;letter-spacing:.16em;
}
.ind-section.ind-out .ind-section-label{color:var(--outsourcing)}
.ind-section.ind-fin .ind-section-label{color:var(--finance)}
.ind-section-label::before{
  content:"";width:8px;height:8px;border-radius:50%;
}
.ind-section.ind-out .ind-section-label::before{
  background:var(--outsourcing);box-shadow:0 0 0 3px rgba(244,148,35,.20);
}
.ind-section.ind-fin .ind-section-label::before{
  background:var(--finance);box-shadow:0 0 0 3px rgba(91,87,168,.20);
}

.ind-section ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px}
.ind-section li{
  font-size:13.5px;color:var(--ink-2);font-weight:600;
  padding-left:14px;position:relative;line-height:1.45;
}
.ind-section li::before{
  content:"";position:absolute;left:0;top:7px;
  width:5px;height:5px;border-radius:50%;background:var(--ink-soft);opacity:.6;
}

/* ---- Método integrado (onde os dois mundos se cruzam) ---- */
.integrated{padding:130px 0;background:#fff}
.integ-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:64px}
/* ============================================================
   INTEG-CARD — redesign editorial com tab + banda de integração
   ============================================================ */
.integ-card{
  position:relative;
  padding:80px 36px 0;
  background:linear-gradient(165deg,#FAFBFD 0%,#fff 55%,#F8F9FC 100%);
  border:1px solid rgba(45,49,66,.07);
  border-radius:20px;
  display:flex;flex-direction:column;gap:14px;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s;
  overflow:hidden;
  min-height:520px;
}
.integ-card::before{display:none}
.integ-card::after{
  content:"";position:absolute;top:-50%;right:-30%;width:340px;height:340px;border-radius:50%;
  background:radial-gradient(closest-side,var(--glow-color,rgba(244,200,27,.10)),transparent 70%);
  opacity:0;transition:opacity .4s;pointer-events:none;
}
.integ-card:hover{transform:translateY(-6px);box-shadow:0 20px 48px rgba(45,49,66,.10);border-color:rgba(45,49,66,.14)}
.integ-card:hover::after{opacity:1}

/* Número como TAB colorida no topo-esquerda */
.integ-card .integ-num{
  position:absolute;top:0;left:32px;
  width:64px;height:56px;
  border-radius:0 0 14px 14px;
  background:var(--bx-yellow);color:var(--ink);
  font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;font-weight:800;
  display:grid;place-items:center;letter-spacing:-.02em;margin:0;
  box-shadow:0 8px 20px rgba(244,200,27,.30);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;
  z-index:2;
}
.integ-card:hover .integ-num{transform:translateY(6px);box-shadow:0 14px 28px rgba(244,200,27,.40)}

/* Eyebrow categoria — acima do título */
.integ-card .integ-head{display:flex;align-items:center;gap:10px}
.integ-card .integ-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;
  text-transform:uppercase;letter-spacing:.2em;color:var(--ink-soft);
}
.integ-card .integ-eyebrow::before{
  content:"";width:18px;height:1.5px;background:currentColor;display:inline-block;
}

/* Título + corpo */
.integ-card h4{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;line-height:1.2;
  letter-spacing:-.02em;margin:6px 0 0;color:var(--ink);
}
.integ-card p{
  font-size:14.5px;color:var(--ink-2);margin:6px 0 28px;
  line-height:1.65;flex:1;font-weight:500;
}

/* BANDA DE INTEGRAÇÃO — rodapé colorido bipartido */
.integ-card .integ-band{
  margin:0 -36px;
  display:flex;align-items:stretch;
  border-top:1px solid rgba(45,49,66,.08);
  position:relative;min-height:62px;
}
.integ-card .integ-band-half{
  flex:1;padding:18px 22px;
  display:flex;align-items:center;gap:12px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;
  color:var(--ink);letter-spacing:-.005em;
  transition:background .25s;
}
.integ-card .integ-band-half.b-out{
  background:linear-gradient(135deg,rgba(244,148,35,.10) 0%,rgba(244,148,35,.04) 100%);
  border-bottom-left-radius:20px;
}
.integ-card .integ-band-half.b-fin{
  background:linear-gradient(135deg,rgba(91,87,168,.04) 0%,rgba(91,87,168,.10) 100%);
  border-bottom-right-radius:20px;justify-content:flex-end;text-align:right;
}
.integ-card .integ-band-half.b-fin .band-dot{order:2}
.integ-card .integ-band-x{
  width:48px;display:grid;place-items:center;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;
  color:var(--muted);background:#fff;
  border-left:1px solid rgba(45,49,66,.06);border-right:1px solid rgba(45,49,66,.06);
  letter-spacing:.04em;
}
.integ-card:hover .integ-band-half.b-out{background:linear-gradient(135deg,rgba(244,148,35,.18) 0%,rgba(244,148,35,.08) 100%)}
.integ-card:hover .integ-band-half.b-fin{background:linear-gradient(135deg,rgba(91,87,168,.08) 0%,rgba(91,87,168,.18) 100%)}

.integ-card .band-dot{
  width:10px;height:10px;border-radius:50%;flex-shrink:0;
}
.integ-card .integ-band-half.b-out .band-dot{background:var(--outsourcing);box-shadow:0 0 0 3px rgba(244,148,35,.20)}
.integ-card .integ-band-half.b-fin .band-dot{background:var(--finance);box-shadow:0 0 0 3px rgba(91,87,168,.20)}

/* SOLO band (uma empresa só — caso queira no futuro) */
.integ-card.solo-out .integ-band-half.b-fin,
.integ-card.solo-out .integ-band-x{display:none}
.integ-card.solo-out .integ-band-half.b-out{border-bottom-right-radius:20px}
.integ-card.solo-fin .integ-band-half.b-out,
.integ-card.solo-fin .integ-band-x{display:none}
.integ-card.solo-fin .integ-band-half.b-fin{border-bottom-left-radius:20px}

/* === Variantes por cor — afetam a TAB do número ===
   Borda topo agora não existe; a cor da tab faz o trabalho. */
.integ-card.lead-out .integ-num{
  background:var(--outsourcing);color:#fff;
  box-shadow:0 8px 24px rgba(244,148,35,.40);
}
.integ-card.lead-out{--glow-color:rgba(244,148,35,.12)}
.integ-card.lead-out:hover .integ-num{box-shadow:0 14px 32px rgba(244,148,35,.55)}

.integ-card.lead-fin .integ-num{
  background:var(--finance);color:#fff;
  box-shadow:0 8px 24px rgba(91,87,168,.40);
}
.integ-card.lead-fin{--glow-color:rgba(91,87,168,.12)}
.integ-card.lead-fin:hover .integ-num{box-shadow:0 14px 32px rgba(91,87,168,.55)}

.integ-card.lead-both .integ-num{
  background:linear-gradient(135deg,var(--outsourcing) 0%,var(--finance) 100%);color:#fff;
  box-shadow:0 8px 24px rgba(140,110,158,.40);
}
.integ-card.lead-both{--glow-color:rgba(180,118,150,.12)}
.integ-card.lead-both:hover .integ-num{box-shadow:0 14px 32px rgba(140,110,158,.55)}

.integ-card.lead-dna .integ-num{
  background:linear-gradient(135deg,var(--bx-yellow) 0%,var(--bx-green) 100%);color:var(--ink);
  box-shadow:0 8px 24px rgba(244,200,27,.45);
}
.integ-card.lead-dna{--glow-color:rgba(244,200,27,.18)}
.integ-card.lead-dna:hover .integ-num{box-shadow:0 14px 32px rgba(244,200,27,.60)}

@media(max-width:680px){
  .integ-card{padding:72px 24px 0;min-height:auto}
  .integ-card .integ-band{margin:0 -24px}
  .integ-card .integ-band-half{padding:14px 16px;font-size:12px}
  .integ-card .integ-num{left:24px;width:56px;height:48px;font-size:21px}
}
.integ-card h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:21px;line-height:1.2;letter-spacing:-.015em;margin:0}
.integ-card p{font-size:15px;color:var(--ink-soft);line-height:1.65;margin:0}
.integ-card .integ-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.integ-card .integ-tags span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:5px 11px;border-radius:999px}
.integ-card .integ-tags .tag-out{color:var(--outsourcing);background:rgba(244,148,35,.12)}
.integ-card .integ-tags .tag-fin{color:var(--finance);background:rgba(91,87,168,.12)}

/* ---- Track record (big number display) ---- */
.track{padding:130px 0;background:linear-gradient(135deg,var(--ink) 0%,#1A1E2E 50%,#252A40 100%);color:#fff;position:relative;overflow:hidden}
.track::before{content:"";position:absolute;top:-30%;right:-10%;width:700px;height:700px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.14),transparent 70%);filter:blur(40px)}
.track::after{content:"";position:absolute;bottom:-30%;left:-10%;width:500px;height:500px;border-radius:50%;background:radial-gradient(closest-side,rgba(91,87,168,.18),transparent 70%);filter:blur(40px)}
.track .container{position:relative;z-index:1}
.track h2{color:#fff;text-align:center;max-width:780px;margin:0 auto 12px}
.track .sec-eyebrow{color:#fff;justify-content:center;text-align:center;width:100%}
.track p.t-sub{color:#C7CCDA;text-align:center;font-size:18px;max-width:680px;margin:0 auto 80px}
.bignum-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.bignum{padding:48px 24px;text-align:left;border-right:1px solid rgba(255,255,255,.1);position:relative}
.bignum:last-child{border-right:none}
.bignum .bn-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(48px,6vw,76px);font-weight:800;color:#fff;letter-spacing:-.04em;line-height:.9;margin-bottom:14px}
.bignum .bn-num .bn-u{color:var(--bx-yellow);font-size:.55em;margin-left:2px}
.bignum .bn-label{font-size:13px;color:#C7CCDA;line-height:1.5;font-weight:600;max-width:200px}

.track-cases{margin-top:80px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.track-case{background:linear-gradient(180deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.02) 100%);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;gap:14px;transition:transform .3s,border-color .3s}
.track-case:hover{transform:translateY(-6px);border-color:rgba(244,200,27,.4)}
.track-case .tc-tag{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bx-yellow);font-weight:800}
.track-case h4{font-family:'Plus Jakarta Sans',sans-serif;color:#fff;font-size:21px;line-height:1.25;margin:6px 0 4px}
.track-case .tc-desc{color:#C7CCDA;font-size:14.5px;line-height:1.6}
.track-case .tc-tags{display:flex;gap:8px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}
.track-case .tc-tags span{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.06);color:#C7CCDA}

/* ---- Liderança ---- */
.leadership{padding:130px 0;background:var(--bg)}

/* Agrupamento por empresa */
.lead-group{margin-top:56px}
.lead-group + .lead-group{margin-top:80px}
.lead-group-head{
  display:flex;align-items:center;gap:24px;margin-bottom:32px;
  padding-bottom:20px;border-bottom:1px solid var(--line);
}
.lead-group-head img{height:36px;width:auto}
.lead-group-head .lgh-info{display:flex;flex-direction:column;gap:4px}
.lead-group-head .lgh-eyebrow{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;
  text-transform:uppercase;letter-spacing:.16em;color:var(--c,var(--ink-soft));
}
.lead-group-head .lgh-count{
  margin-left:auto;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;
  font-weight:800;color:var(--ink-soft);
  padding:6px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);
}
.lead-group.lg-fin{--c:var(--finance)}
.lead-group.lg-out{--c:var(--outsourcing)}

.lead-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.lead-grid.cols-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1080px){
  .lead-grid.cols-4,.lead-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .lead-grid.cols-4,.lead-grid{grid-template-columns:1fr}
}
.lead-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s,border-color .25s}
.lead-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(45,49,66,.14)}

/* PHOTO ART — gradient da empresa + monograma grande + pattern de pontos */
.lead-photo{
  aspect-ratio:4/3;position:relative;overflow:hidden;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--ink) 0%,#1F2333 100%);
}
.lead-photo::before{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(255,255,255,.10) 1.5px,transparent 1.5px);
  background-size:22px 22px;opacity:.5;
}
.lead-photo::after{
  content:"BX";position:absolute;top:14px;right:18px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;font-weight:800;letter-spacing:.16em;
  color:rgba(255,255,255,.4);z-index:2;
}
.lead-photo .lead-initial{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:84px;font-weight:800;color:#fff;
  letter-spacing:-.04em;line-height:1;
  width:auto;height:auto;background:transparent;
  box-shadow:none;border-radius:0;
  position:relative;z-index:2;
  text-shadow:0 4px 24px rgba(0,0,0,.18);
}

/* Cores específicas por grupo de empresa */
.lg-fin .lead-photo{background:linear-gradient(135deg,var(--finance) 0%,#3D3A7A 100%)}
.lg-out .lead-photo{background:linear-gradient(135deg,var(--outsourcing) 0%,#B86D14 100%)}

.lead-body{padding:28px 28px 30px}
.lead-body .lead-name{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin:0 0 4px}
.lead-body .lead-role{font-size:12.5px;color:var(--ink-soft);font-weight:800;text-transform:uppercase;letter-spacing:.10em;margin:0 0 14px}
.lg-fin .lead-body .lead-role{color:var(--finance)}
.lg-out .lead-body .lead-role{color:var(--outsourcing)}
.lead-body .lead-bio{font-size:14px;color:var(--ink-soft);line-height:1.6;margin:0 0 18px}
.lead-body .lead-credentials{display:flex;gap:6px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--line)}
.lead-body .lead-credentials span{font-size:11px;font-weight:700;padding:4px 10px;border-radius:6px;letter-spacing:-.005em}

/* Credentials coloridos por empresa */
.lg-fin .lead-body .lead-credentials span{
  color:var(--finance);background:rgba(91,87,168,.08);border:1px solid rgba(91,87,168,.20);
}
.lg-out .lead-body .lead-credentials span{
  color:var(--outsourcing);background:rgba(244,148,35,.10);border:1px solid rgba(244,148,35,.25);
}

/* ---- Tecnologia BX Outsourcing — produto dedicado ---- */
.tech-inst{padding:130px 0;position:relative;overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#FEFBF5 60%,#fff 100%);
}
.tech-inst::before{
  content:"";position:absolute;top:-20%;right:-10%;width:600px;height:600px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(244,148,35,.10),transparent 70%);filter:blur(40px);pointer-events:none;
}
.tech-inst::after{
  content:"";position:absolute;bottom:-20%;left:-5%;width:500px;height:500px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(244,148,35,.06),transparent 70%);filter:blur(40px);pointer-events:none;
}
.tech-inst .container{position:relative;z-index:1}

/* Header com logo BX Outsourcing destacado */
.tech-brand-head{
  display:flex;align-items:center;justify-content:center;gap:18px;
  margin-bottom:24px;padding:14px 28px;background:#fff;
  border:1px solid rgba(244,148,35,.25);border-radius:999px;
  width:fit-content;margin-left:auto;margin-right:auto;
  box-shadow:0 8px 24px rgba(244,148,35,.10);
}
.tech-brand-head img{height:28px;width:auto}
.tech-brand-head-label{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:800;
  text-transform:uppercase;letter-spacing:.16em;color:var(--outsourcing);
  border-left:1px solid rgba(244,148,35,.3);padding-left:18px;
}

.tech-grid-inst{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px}

/* Card tech — todos na cor BX Outsourcing */
.tech-inst-card{
  background:#fff;border:1px solid var(--line);border-radius:18px;
  padding:28px;transition:transform .25s,border-color .25s,box-shadow .25s;
  position:relative;overflow:hidden;
}
.tech-inst-card::before{
  content:"";position:absolute;top:0;left:0;width:100%;height:3px;
  background:linear-gradient(90deg,var(--outsourcing) 0%,#FFB35E 100%);
  transform:scaleX(0);transform-origin:left;transition:transform .35s;
}
.tech-inst-card:hover{transform:translateY(-4px);border-color:rgba(244,148,35,.4);box-shadow:0 16px 36px rgba(244,148,35,.12)}
.tech-inst-card:hover::before{transform:scaleX(1)}

.tech-inst-card .ti-head{
  display:flex;align-items:center;gap:14px;margin-bottom:18px;
  padding-bottom:18px;border-bottom:1px solid var(--line);
}
.tech-inst-card .ti-mark{
  width:48px;height:48px;border-radius:12px;
  background:linear-gradient(135deg,var(--outsourcing) 0%,#B86D14 100%);
  color:#fff;display:grid;place-items:center;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:14px;
  flex-shrink:0;letter-spacing:-.02em;
  box-shadow:0 6px 16px rgba(244,148,35,.30);
}
.tech-inst-card .ti-cat{
  font-size:11px;font-weight:800;text-transform:uppercase;
  letter-spacing:.14em;color:var(--outsourcing);
}
.tech-inst-card h4{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;
  letter-spacing:-.015em;margin:0 0 8px;line-height:1.2;color:var(--ink);
}
.tech-inst-card p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.6}

/* Variantes removidas — todas BX Outsourcing */
.tech-inst-card.tic1,.tech-inst-card.tic2,.tech-inst-card.tic3{--c:var(--outsourcing)}

/* ---- BX Certified strip (produto complementar) ---- */
.certified-strip{padding:80px 0;background:linear-gradient(135deg,var(--certified-light) 0%,#fff 100%);position:relative;overflow:hidden}
.certified-strip::before{content:"";position:absolute;top:-50%;right:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,rgba(74,120,194,.14),transparent 70%);filter:blur(40px)}
.certified-strip .container{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.cs-content img{height:48px;width:auto;margin-bottom:24px}
.cs-content h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:34px;letter-spacing:-.02em;margin:0 0 14px;line-height:1.15}
.cs-content p{font-size:16.5px;color:var(--ink-soft);line-height:1.65;margin:0 0 24px}
.cs-stats{display:flex;gap:36px;margin-bottom:28px}
.cs-stats .item b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:30px;font-weight:800;color:var(--certified);letter-spacing:-.02em;line-height:1}
.cs-stats .item span{font-size:12.5px;color:var(--ink-soft);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-top:6px;display:block}
.cs-visual{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:380px;margin:0 auto}
.cs-visual .cs-circle{width:280px;height:280px;border-radius:50%;background:linear-gradient(135deg,var(--certified) 0%,#33588C 100%);box-shadow:var(--shadow-lg);display:grid;place-items:center;position:relative;overflow:hidden;padding:48px}
.cs-visual .cs-circle::before{content:"";position:absolute;top:-30%;right:-30%;width:80%;height:80%;border-radius:50%;background:rgba(255,255,255,.1)}
.cs-visual .cs-circle img{position:relative;max-width:75%;filter:brightness(0) invert(1);z-index:1}
.cs-badge{position:absolute;background:#fff;border-radius:14px;padding:12px 16px;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:10px;font-weight:800;font-size:13px}
.cs-badge .cb-ic{width:32px;height:32px;border-radius:8px;background:var(--certified);color:#fff;display:grid;place-items:center;font-size:14px}
.cs-badge.cb1{top:10%;right:-10px;animation:float 4.4s ease-in-out infinite}
.cs-badge.cb2{bottom:10%;left:-10px;animation:float 4.4s ease-in-out -2s infinite}

/* ---- Insights / Knowledge ---- */
.insights{padding:130px 0;background:var(--bg)}
.ins-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px}
.ins-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.ins-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.ins-cover{aspect-ratio:16/9;position:relative;overflow:hidden}
.ins-cover.ic1{background:linear-gradient(135deg,#E8E6F5 0%,#9F9BD9 100%)}
.ins-cover.ic2{background:linear-gradient(135deg,#FDE9D1 0%,#F4A85F 100%)}
.ins-cover.ic3{background:linear-gradient(135deg,#DCE6F4 0%,#7AA0D4 100%)}
.ins-cover::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 70%,rgba(255,255,255,.35),transparent 60%)}
.ins-cover .ic-label{position:absolute;top:18px;left:18px;background:rgba(255,255,255,.95);padding:6px 12px;border-radius:6px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--ink);z-index:2}
.ins-body{padding:28px;display:flex;flex-direction:column;gap:10px;flex:1}
.ins-body .ins-cat{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft)}
.ins-body h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:21px;line-height:1.25;margin:4px 0 8px;letter-spacing:-.015em}
.ins-body p{font-size:14.5px;color:var(--ink-soft);margin:0;line-height:1.55}
.ins-body .ins-meta{display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);font-weight:700;margin-top:auto}
.ins-body .ins-meta b{color:var(--ink-2);font-weight:800}

/* ---- CTA institucional ---- */
.cta-inst{padding:130px 0;background:linear-gradient(135deg,var(--ink) 0%,#0F1320 100%);color:#fff;position:relative;overflow:hidden}
.cta-inst::before{content:"";position:absolute;top:-30%;right:-10%;width:700px;height:700px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.16),transparent 70%);filter:blur(40px)}
.cta-inst::after{content:"";position:absolute;bottom:-30%;left:-10%;width:500px;height:500px;border-radius:50%;background:radial-gradient(closest-side,rgba(91,87,168,.16),transparent 70%);filter:blur(40px)}
.cta-inst .container{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.cta-inst h2{color:#fff;font-size:clamp(36px,4.6vw,56px);line-height:1.1;letter-spacing:-.03em;margin-bottom:24px}
.cta-inst h2 em{font-style:normal;background:linear-gradient(120deg,var(--bx-yellow),var(--bx-green));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.cta-inst .ci-lead{color:#C7CCDA;font-size:18px;line-height:1.65;margin-bottom:36px;max-width:480px}
.cta-inst .ci-contacts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:32px}
.cta-inst .ci-c{padding:18px 20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;backdrop-filter:blur(10px)}
.cta-inst .ci-c .ci-lbl{font-size:11.5px;color:#8A92A6;font-weight:700;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}
.cta-inst .ci-c b{display:block;color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:16px;font-weight:700}
.cta-inst-form{background:#fff;color:var(--ink);padding:42px;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.cta-inst-form h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;margin:0 0 6px;letter-spacing:-.02em}
.cta-inst-form .sub{font-size:14px;color:var(--ink-soft);margin:0 0 24px}
.cta-inst-form label{display:block;font-size:12.5px;font-weight:800;color:var(--ink-2);margin-bottom:6px;text-transform:uppercase;letter-spacing:.08em}
.cta-inst-form input,.cta-inst-form select,.cta-inst-form textarea{width:100%;padding:14px 16px;border:1.5px solid var(--line);border-radius:10px;font:inherit;font-size:14.5px;background:#fff;color:var(--ink);font-family:'Nunito',sans-serif;transition:border-color .15s,box-shadow .15s}
.cta-inst-form input:focus,.cta-inst-form select:focus,.cta-inst-form textarea:focus{outline:none;border-color:var(--bx-yellow);box-shadow:0 0 0 4px rgba(244,200,27,.16)}
.cta-inst-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.cta-inst-form .field{margin-bottom:16px}
.cta-inst-form textarea{min-height:90px;resize:vertical}
.cta-inst-form button{width:100%;justify-content:center;font-size:16px;padding:16px 22px;margin-top:8px}
.cta-inst-form .legal{font-size:11.5px;color:var(--muted);margin-top:14px;text-align:center;line-height:1.5}
.cta-inst-form .legal a{color:var(--finance);font-weight:700}

/* ---- FAQ corporativo ---- */
.faq-inst{padding:130px 0;background:#fff}
.faq-inst-wrap{max-width:880px;margin:56px auto 0;display:flex;flex-direction:column;gap:12px}
.faq-inst-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq-inst-item[open]{border-color:var(--bx-yellow);box-shadow:var(--shadow-sm);background:var(--bg-2)}
.faq-inst-item summary{padding:24px 28px;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:17.5px;color:var(--ink);display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;letter-spacing:-.01em}
.faq-inst-item summary::-webkit-details-marker{display:none}
.faq-inst-item summary::after{content:"";width:28px;height:28px;border-radius:50%;background:var(--bg);display:grid;place-items:center;transition:transform .2s,background .2s;flex-shrink:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232D3142' stroke-width='2.5' stroke-linecap='round'><path d='M12 5v14M5 12h14'/></svg>");background-repeat:no-repeat;background-position:center;background-size:14px}
.faq-inst-item[open] summary::after{transform:rotate(45deg);background-color:var(--bx-yellow)}
.faq-inst-item .a{padding:0 28px 26px;font-size:15.5px;color:var(--ink-2);line-height:1.7;font-weight:500}

/* ============================================================
   COMPANY CHAPTERS — cada empresa com protagonismo visual próprio
   ============================================================ */

.chapters-wrap{position:relative;background:#fff}

.company-chapter{
  position:relative;padding:140px 0;overflow:hidden;
  border-top:1px solid var(--line);
}
.company-chapter::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--c) 12%,white) 50%,transparent 100%);
  pointer-events:none;z-index:0;
}
.company-chapter::after{
  content:"";position:absolute;top:-15%;right:-10%;width:600px;height:600px;border-radius:50%;
  background:radial-gradient(closest-side,var(--c),transparent 70%);opacity:.18;filter:blur(40px);
  pointer-events:none;z-index:0;
}
.company-chapter.cc-out{--c:var(--outsourcing);--c-dark:#B86D14;--c-light:var(--outsourcing-light)}
.company-chapter.cc-fin{--c:var(--finance);--c-dark:#3D3A7A;--c-light:var(--finance-light)}
.company-chapter.cc-fin::after{left:-10%;right:auto}
.company-chapter.cc-cer{--c:var(--certified);--c-dark:#33588C;--c-light:var(--certified-light)}

.company-chapter .container{position:relative;z-index:1}

/* CHAPTER HEADER — cor explícita, label gigante, logo proeminente */
.cc-mark{
  display:flex;align-items:center;gap:24px;
  padding:14px 24px;background:var(--c);color:#fff;
  border-radius:999px;width:fit-content;margin:0 auto 56px;
  font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:13px;
  letter-spacing:.2em;text-transform:uppercase;
  box-shadow:0 10px 30px color-mix(in srgb,var(--c) 40%,transparent);
}
.cc-mark .cc-mark-num{
  background:rgba(255,255,255,.25);
  width:32px;height:32px;border-radius:50%;
  display:grid;place-items:center;font-size:13px;letter-spacing:0;
}

.cc-header{
  display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center;
  margin-bottom:64px;
}
.cc-header-text{display:flex;flex-direction:column;gap:20px}
.cc-logo{height:88px;width:auto;align-self:flex-start;margin-bottom:8px}
.cc-header h2{
  font-size:clamp(36px,4.6vw,56px);line-height:1.1;letter-spacing:-.025em;
  margin:0;
}
.cc-header h2 em{font-style:normal;color:var(--c)}
.cc-header .cc-lead{
  font-size:19px;line-height:1.65;color:var(--ink-2);margin:0;font-weight:500;
}
.cc-header .cc-lead b{color:var(--ink);font-weight:800}

.cc-stat-panel{
  background:#fff;border:1px solid var(--line);border-radius:24px;
  padding:32px;box-shadow:var(--shadow);position:relative;overflow:hidden;
}
.cc-stat-panel::before{
  content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--c);
}
.cc-stat-panel .cc-stat-eyebrow{
  font-size:11.5px;font-weight:800;color:var(--c);text-transform:uppercase;
  letter-spacing:.16em;margin-bottom:14px;display:block;
}
.cc-stat-panel .cc-stat-big{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:clamp(56px,7vw,84px);font-weight:800;color:var(--c);
  letter-spacing:-.04em;line-height:.9;margin:0 0 8px;
}
.cc-stat-panel .cc-stat-big .u{font-size:.45em;margin-left:4px;color:var(--c-dark)}
.cc-stat-panel .cc-stat-label{font-size:15px;color:var(--ink-2);font-weight:600;line-height:1.5}
.cc-stat-panel .cc-stat-mini{
  display:flex;gap:20px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line);
}
.cc-stat-panel .cc-stat-mini .item b{
  display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;
  color:var(--ink);letter-spacing:-.02em;line-height:1;
}
.cc-stat-panel .cc-stat-mini .item span{
  font-size:11.5px;color:var(--muted);font-weight:700;text-transform:uppercase;
  letter-spacing:.08em;margin-top:5px;display:block;
}

/* CHAPTER SERVICES — cards de serviços coloridos */
.cc-services{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:48px;
}
.cc-service{
  background:#fff;border:1px solid var(--line);border-left:4px solid var(--c);
  border-radius:12px;padding:22px;
  transition:transform .25s,box-shadow .25s,border-color .25s;
}
.cc-service:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.cc-service .cc-svc-ic{
  width:36px;height:36px;border-radius:10px;
  background:color-mix(in srgb,var(--c) 12%,white);
  color:var(--c);font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:800;font-size:14px;display:grid;place-items:center;
  margin-bottom:14px;letter-spacing:-.01em;
}
.cc-service h4{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:16.5px;letter-spacing:-.015em;
  margin:0 0 6px;line-height:1.25;color:var(--ink);
}
.cc-service p{font-size:13.5px;color:var(--ink-soft);margin:0;line-height:1.55}

/* CHAPTER QUOTE — voz do sócio */
.cc-quote-block{
  background:var(--c);color:#fff;border-radius:24px;padding:48px;
  margin-bottom:48px;position:relative;overflow:hidden;
}
.cc-quote-block::before{
  content:"";position:absolute;top:-30%;right:-10%;width:400px;height:400px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(255,255,255,.18),transparent 70%);
}
.cc-quote-block::after{
  content:"\201C";position:absolute;top:24px;left:32px;font-family:'Plus Jakarta Sans',sans-serif;
  font-size:120px;line-height:.8;color:rgba(255,255,255,.18);font-weight:800;
}
.cc-quote-block .cc-quote{
  position:relative;font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;line-height:1.4;
  color:#fff;font-weight:600;letter-spacing:-.015em;margin:0 0 24px;padding-left:60px;
  font-style:italic;
}
.cc-quote-block .cc-quote-who{
  position:relative;display:flex;align-items:center;gap:14px;padding-left:60px;
}
.cc-quote-block .cc-quote-avatar{
  width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.2);
  display:grid;place-items:center;font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:800;font-size:15px;flex-shrink:0;
}
.cc-quote-block .cc-quote-who b{
  display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;color:#fff;font-weight:800;
}
.cc-quote-block .cc-quote-who span{font-size:12.5px;color:rgba(255,255,255,.8);font-weight:600}

/* CHAPTER CTA */
.cc-cta{
  display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;
}
.cc-cta .btn-chapter{
  background:var(--c);color:#fff;
  display:inline-flex;align-items:center;gap:10px;padding:16px 28px;
  border-radius:12px;font-weight:800;font-size:15.5px;
  transition:all .2s ease;text-decoration:none;font-family:'Nunito',sans-serif;
  box-shadow:0 8px 24px color-mix(in srgb,var(--c) 40%,transparent);
}
.cc-cta .btn-chapter:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 32px color-mix(in srgb,var(--c) 50%,transparent);
}
.cc-cta .btn-chapter .arrow{transition:transform .2s}
.cc-cta .btn-chapter:hover .arrow{transform:translateX(4px)}
.cc-cta .btn-chapter-ghost{
  background:transparent;color:var(--c);border:1.5px solid var(--c);
  display:inline-flex;align-items:center;gap:10px;padding:14.5px 26px;
  border-radius:12px;font-weight:800;font-size:15.5px;text-decoration:none;
  font-family:'Nunito',sans-serif;transition:all .2s;
}
.cc-cta .btn-chapter-ghost:hover{background:var(--c);color:#fff}

@media(max-width:1080px){
  .cc-header{grid-template-columns:1fr;gap:36px}
  .cc-services{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .company-chapter{padding:80px 0}
  .cc-services{grid-template-columns:1fr}
  .cc-quote-block{padding:32px 28px}
  .cc-quote-block .cc-quote{font-size:18px;padding-left:0}
  .cc-quote-block::after{font-size:80px;left:20px;top:14px}
  .cc-quote-block .cc-quote-who{padding-left:0}
  .cc-stat-panel{padding:24px}
  .cc-stat-panel .cc-stat-big{font-size:54px}
  .cc-stat-panel .cc-stat-mini{flex-wrap:wrap}
}

/* ============================================================
   NAV — links color-coded por empresa
   ============================================================ */
.menu a.nav-out,
.menu a.nav-fin,
.menu a.nav-cer{display:inline-flex;align-items:center;gap:8px}
.menu a.nav-out::before,
.menu a.nav-fin::before,
.menu a.nav-cer::before{
  content:"";width:8px;height:8px;border-radius:50%;display:inline-block;
  transition:transform .2s,box-shadow .2s;
}
.menu a.nav-out::before{background:var(--outsourcing);box-shadow:0 0 0 2px rgba(244,148,35,.18)}
.menu a.nav-fin::before{background:var(--finance);box-shadow:0 0 0 2px rgba(91,87,168,.18)}
.menu a.nav-cer::before{background:var(--certified);box-shadow:0 0 0 2px rgba(74,120,194,.18)}
.menu a.nav-out:hover::before{transform:scale(1.4);box-shadow:0 0 0 4px rgba(244,148,35,.25)}
.menu a.nav-fin:hover::before{transform:scale(1.4);box-shadow:0 0 0 4px rgba(91,87,168,.25)}
.menu a.nav-cer:hover::before{transform:scale(1.4);box-shadow:0 0 0 4px rgba(74,120,194,.25)}
.menu a.nav-out::after{background:var(--outsourcing)}
.menu a.nav-fin::after{background:var(--finance)}
.menu a.nav-cer::after{background:var(--certified)}

/* ============================================================
   COMPONENTES — NOVAS PÁGINAS (lideranca, cases, insights,
   grupo, carreiras, diagnostico, artigos longform)
   ============================================================ */

/* ---- Vídeo hero ---- */
.video-hero{position:relative;overflow:hidden;background:var(--ink);min-height:88vh;display:flex;align-items:center;color:#fff;padding:80px 0}
.video-hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.42}
.video-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(11,18,32,.85) 0%,rgba(26,30,46,.6) 50%,rgba(45,49,66,.7) 100%);z-index:1}
.video-hero::after{content:"";position:absolute;top:-20%;right:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(closest-side,rgba(244,200,27,.2),transparent 70%);filter:blur(40px);z-index:2;pointer-events:none}
.video-hero .container{position:relative;z-index:3;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}
.video-hero h1{color:#fff;font-size:clamp(40px,5.6vw,72px);line-height:1.05;letter-spacing:-.035em;margin-bottom:28px}
.video-hero h1 .accent-line{position:relative;display:inline-block}
.video-hero h1 .accent-line::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:12px;background:var(--bx-yellow);z-index:-1;border-radius:3px;opacity:.85}
.video-hero .lead{color:#D9DCE5;font-size:19px;line-height:1.65;max-width:620px;margin-bottom:36px}
.video-hero .eyebrow-inst{color:rgba(255,255,255,.85)}
.video-hero .eyebrow-inst::before{background:var(--bx-yellow)}
.video-hero .ihero-stats{border-top-color:rgba(255,255,255,.15)}
.video-hero .ihero-stats .item{border-right-color:rgba(255,255,255,.15)}
.video-hero .ihero-stats .item b{color:#fff}
.video-hero .ihero-stats .item span{color:#C7CCDA}
.video-hero .ihero-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff}
.video-hero .ihero-card h4{color:rgba(255,255,255,.7)}
.video-hero .ihero-card .h-quote{color:#fff}
.video-hero .ihero-card .h-quote span{color:var(--bx-yellow)}
.video-hero .ihero-card .h-author{border-top-color:rgba(255,255,255,.15)}
.video-hero .ihero-card .h-author b{color:#fff}
.video-hero .ihero-card .h-author span{color:#C7CCDA}

/* ---- WhatsApp flutuante ---- */
.wa-float{position:fixed;right:24px;bottom:24px;z-index:200;display:flex;align-items:center;gap:10px;padding:14px 20px;background:#25D366;color:#fff;border-radius:999px;font-weight:800;font-size:14.5px;text-decoration:none;box-shadow:0 12px 32px rgba(37,211,102,.5),0 4px 12px rgba(37,211,102,.3);transition:transform .2s,box-shadow .2s;font-family:'Nunito',sans-serif}
.wa-float:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 18px 40px rgba(37,211,102,.55),0 6px 18px rgba(37,211,102,.35)}
.wa-float .wa-ic{width:22px;height:22px;display:grid;place-items:center}
.wa-float .wa-ic svg{width:22px;height:22px;fill:#fff}
@media(max-width:680px){
  .wa-float{padding:14px;border-radius:50%}
  .wa-float span:not(.wa-ic){display:none}
}

/* ---- Cookie banner LGPD ---- */
.cookie-banner{position:fixed;bottom:24px;left:24px;max-width:480px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow-lg);z-index:201;display:none;font-size:14px;color:var(--ink-2);line-height:1.55}
.cookie-banner.show{display:block;animation:slideUp .3s ease-out}
@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
.cookie-banner b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;color:var(--ink);margin-bottom:6px}
.cookie-banner a{color:var(--finance);font-weight:700}
.cookie-banner .cb-actions{display:flex;gap:10px;margin-top:16px}
.cookie-banner button{padding:9px 16px;border-radius:8px;font-weight:800;font-size:13px;border:1px solid var(--line);cursor:pointer;font-family:'Nunito',sans-serif;transition:all .15s}
.cookie-banner .cb-accept{background:var(--ink);color:#fff;border-color:var(--ink)}
.cookie-banner .cb-accept:hover{background:var(--bx-yellow);color:var(--ink);border-color:var(--bx-yellow)}
.cookie-banner .cb-reject{background:#fff;color:var(--ink-2)}
.cookie-banner .cb-reject:hover{border-color:var(--ink-2)}
@media(max-width:680px){
  .cookie-banner{left:12px;right:12px;bottom:88px;max-width:none}
}

/* ---- Page wrapper genérico ---- */
.page-wrapper{padding:80px 0 100px;background:#fff}
.page-wrapper .container{max-width:1080px}

/* ---- Article longform ---- */
.article-hero{padding:60px 0 50px;background:var(--bg);border-bottom:1px solid var(--line)}
.article-hero .container{max-width:820px}
.article-hero .a-cat{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--finance);font-weight:800;margin-bottom:20px}
.article-hero .a-cat::before{content:"";width:24px;height:2px;background:var(--finance)}
.article-hero h1{font-size:clamp(34px,4.2vw,52px);line-height:1.15;letter-spacing:-.025em;margin-bottom:22px}
.article-hero .a-sub{font-size:21px;color:var(--ink-soft);line-height:1.55;margin-bottom:32px;font-weight:500}
.article-hero .a-meta{display:flex;gap:18px;align-items:center;padding-top:24px;border-top:1px solid var(--line);font-size:13.5px;color:var(--ink-soft);font-weight:600;flex-wrap:wrap}
.article-hero .a-author{display:flex;align-items:center;gap:12px}
.article-hero .a-author .a-avt{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--ink),#1F2333);color:#fff;display:grid;place-items:center;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:15px}
.article-hero .a-author b{display:block;font-family:'Plus Jakarta Sans',sans-serif;color:var(--ink);font-size:14px;font-weight:800}
.article-hero .a-author span{font-size:12.5px;color:var(--muted);font-weight:600}
.article-hero .a-sep{width:4px;height:4px;border-radius:50%;background:var(--muted)}

.article-body{padding:60px 0 80px;background:#fff}
.article-body .container{max-width:760px}
.article-body p,.article-body ul,.article-body ol{font-size:18px;line-height:1.8;color:var(--ink-2);margin-bottom:22px;font-weight:500}
.article-body p:first-of-type::first-letter{font-family:'Plus Jakarta Sans',sans-serif;font-size:68px;font-weight:800;float:left;line-height:.85;margin:8px 14px 0 -2px;color:var(--bx-yellow-d)}
.article-body h2{font-size:30px;line-height:1.2;letter-spacing:-.02em;margin:48px 0 18px;font-weight:800}
.article-body h3{font-size:22px;line-height:1.25;letter-spacing:-.015em;margin:36px 0 14px;font-weight:800}
.article-body ul,.article-body ol{padding-left:22px}
.article-body li{margin-bottom:10px;line-height:1.7}
.article-body blockquote{margin:36px 0;padding:24px 32px;border-left:4px solid var(--bx-yellow);background:var(--bg);border-radius:0 12px 12px 0;font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;line-height:1.45;color:var(--ink);font-weight:700;letter-spacing:-.015em;font-style:normal}
.article-body blockquote cite{display:block;margin-top:14px;font-size:13px;color:var(--ink-soft);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-style:normal}
.article-body strong{color:var(--ink);font-weight:800}
.article-body .callout{margin:36px 0;padding:28px;background:var(--bg-2);border:1px solid var(--line);border-radius:14px}
.article-body .callout h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:var(--bx-yellow-d);font-weight:800;margin:0 0 10px}
.article-body .callout p{margin:0;font-size:16px;color:var(--ink-2);line-height:1.65}
.article-body figure{margin:36px 0;text-align:center}
.article-body figure img{border-radius:14px;box-shadow:var(--shadow)}
.article-body figcaption{margin-top:12px;font-size:13px;color:var(--muted);font-style:italic}
.article-body hr{border:none;height:1px;background:var(--line);margin:48px auto;max-width:120px}
.article-body table{width:100%;border-collapse:collapse;margin:32px 0;font-size:14.5px;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.article-body table th,.article-body table td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line-2)}
.article-body table th{background:var(--bg);font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.article-body table tr:last-child td{border-bottom:none}

.article-share{padding:40px 0;background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.article-share .container{max-width:760px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.article-share .share-label{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft)}
.article-share .share-links{display:flex;gap:10px}
.article-share .share-links a{width:42px;height:42px;border-radius:50%;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:var(--ink);font-weight:800;font-size:13px;transition:all .2s}
.article-share .share-links a:hover{background:var(--bx-yellow);border-color:var(--bx-yellow);transform:translateY(-2px)}

.article-related{padding:80px 0;background:#fff}
.article-related .container{max-width:1080px}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}
@media(max-width:1080px){.related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.related-grid{grid-template-columns:1fr}}

/* ---- Lideranca detail ---- */
.lead-hero{padding:90px 0 70px;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);text-align:center}
.lead-hero .container{max-width:780px}
.lead-hero h1{font-size:clamp(40px,5vw,60px);margin-bottom:20px;line-height:1.1}
.lead-hero p{font-size:19px;color:var(--ink-soft);line-height:1.6}

.lead-detail{padding:80px 0;background:var(--bg)}
.lead-detail .container{max-width:1080px}
.lead-detail-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:48px;margin-bottom:32px;display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:start;transition:transform .25s,box-shadow .25s}
.lead-detail-card:hover{box-shadow:var(--shadow-lg)}
.lead-detail-photo{
  aspect-ratio:4/5;border-radius:18px;position:relative;overflow:hidden;
  display:grid;place-items:center;
  background:linear-gradient(135deg,var(--ink) 0%,#1F2333 100%);
}
.lead-detail-photo::before{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(255,255,255,.10) 1.5px,transparent 1.5px);
  background-size:26px 26px;opacity:.5;
}
.lead-detail-photo::after{
  content:"BX";position:absolute;top:18px;right:22px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:12px;font-weight:800;letter-spacing:.18em;
  color:rgba(255,255,255,.45);z-index:2;
}
.lead-detail-photo .ld-initial{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:130px;font-weight:800;color:#fff;
  letter-spacing:-.04em;line-height:1;
  width:auto;height:auto;background:transparent;
  box-shadow:none;border-radius:0;
  position:relative;z-index:2;
  text-shadow:0 6px 32px rgba(0,0,0,.22);
}

/* Cores por grupo */
.lg-fin .lead-detail-photo{background:linear-gradient(135deg,var(--finance) 0%,#3D3A7A 100%)}
.lg-out .lead-detail-photo{background:linear-gradient(135deg,var(--outsourcing) 0%,#B86D14 100%)}

/* Role e areas color-coded */
.lg-fin .lead-detail-info .ld-role{color:var(--finance)}
.lg-out .lead-detail-info .ld-role{color:var(--outsourcing)}
.lg-fin .lead-detail-info .ld-areas span{
  color:var(--finance);background:rgba(91,87,168,.08);border-color:rgba(91,87,168,.22);
}
.lg-out .lead-detail-info .ld-areas span{
  color:var(--outsourcing);background:rgba(244,148,35,.10);border-color:rgba(244,148,35,.25);
}
.lg-fin .lead-detail-info .ld-quote{border-left-color:var(--finance);color:var(--finance)}
.lg-out .lead-detail-info .ld-quote{border-left-color:var(--outsourcing);color:var(--outsourcing)}
.lead-detail-info .ld-name{font-family:'Plus Jakarta Sans',sans-serif;font-size:36px;font-weight:800;letter-spacing:-.025em;margin:0 0 6px;color:var(--ink);line-height:1.1}
.lead-detail-info .ld-role{font-size:14px;color:var(--bx-yellow-d);font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin:0 0 24px}
.lead-detail-info .ld-bio{font-size:16px;color:var(--ink-2);line-height:1.7;margin:0 0 24px;font-weight:500}
.lead-detail-info .ld-bio p{margin:0 0 14px;color:var(--ink-2)}
.lead-detail-info .ld-quote{margin:24px 0;padding:18px 22px;background:var(--bg);border-left:3px solid var(--bx-yellow);font-family:'Plus Jakarta Sans',sans-serif;font-size:17px;line-height:1.4;color:var(--ink);font-style:italic;font-weight:600;letter-spacing:-.01em;border-radius:0 12px 12px 0}
.lead-detail-info .ld-areas{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.lead-detail-info .ld-areas span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:6px 12px;border-radius:6px;background:var(--bg);color:var(--ink-2);border:1px solid var(--line)}
.lead-detail-info .ld-meta{display:flex;gap:18px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-soft);font-weight:600;flex-wrap:wrap;align-items:center}
.lead-detail-info .ld-meta a{color:var(--finance);font-weight:800}

/* ---- Case detail ---- */
.case-hub-hero{padding:90px 0 70px;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);text-align:center}
.case-hub-hero .container{max-width:780px}
.case-hub-hero h1{font-size:clamp(40px,5vw,60px);margin-bottom:20px;line-height:1.1}
.case-hub-hero p{font-size:19px;color:var(--ink-soft);line-height:1.6}

.case-listing{padding:80px 0;background:var(--bg)}
.case-listing .container{max-width:1080px}
.case-item{background:#fff;border:1px solid var(--line);border-radius:24px;padding:44px;margin-bottom:28px;display:grid;grid-template-columns:180px 1fr;gap:40px;align-items:start;transition:transform .25s,box-shadow .25s,border-color .25s}
.case-item:hover{border-color:var(--bx-yellow);box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.case-item .ci-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:72px;font-weight:800;color:var(--bx-yellow);line-height:.85;letter-spacing:-.04em;margin:0;opacity:.9}
.case-item .ci-meta{font-size:12px;color:var(--ink-soft);font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-top:14px}
.case-item .ci-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.case-item .ci-tags span{font-size:10.5px;font-weight:800;padding:4px 9px;border-radius:6px;text-transform:uppercase;letter-spacing:.08em}
.case-item .ci-tags .tg-out{background:rgba(244,148,35,.12);color:var(--outsourcing)}
.case-item .ci-tags .tg-fin{background:rgba(91,87,168,.12);color:var(--finance)}
.case-item h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:28px;line-height:1.2;letter-spacing:-.025em;margin:0 0 14px}
.case-item .ci-context{font-size:15.5px;color:var(--ink-soft);line-height:1.65;margin:0 0 22px;font-weight:500}
.case-item .ci-context b{color:var(--ink);font-weight:800}
.case-item .ci-result{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:20px;background:var(--bg);border-radius:14px;margin-bottom:22px}
.case-item .ci-result .r{text-align:left}
.case-item .ci-result .r b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;font-weight:800;color:var(--ink);line-height:1;letter-spacing:-.02em}
.case-item .ci-result .r span{font-size:12px;color:var(--ink-soft);font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-top:5px;display:block}
.case-item .ci-quote{padding:18px 22px;border-left:3px solid var(--bx-yellow);background:var(--bg-2);border-radius:0 12px 12px 0;font-size:15px;line-height:1.55;color:var(--ink-2);font-style:italic;margin-bottom:0}
.case-item .ci-quote .who{display:block;margin-top:8px;font-size:12px;font-weight:800;color:var(--ink);text-transform:uppercase;letter-spacing:.06em;font-style:normal}
@media(max-width:840px){
  .case-item{grid-template-columns:1fr;padding:32px;gap:24px}
  .case-item .ci-num{font-size:54px}
  .case-item .ci-result{grid-template-columns:repeat(3,1fr);gap:10px;padding:16px}
}

/* ---- Princípios ---- */
.principles-hero{padding:90px 0 70px;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);text-align:center}
.principles-hero .container{max-width:780px}
.principles-hero h1{font-size:clamp(40px,5vw,60px);margin-bottom:20px}

.principles{padding:80px 0 100px;background:var(--bg)}
.principles .container{max-width:980px}
.principle{background:#fff;border:1px solid var(--line);border-radius:20px;padding:48px;margin-bottom:24px;display:grid;grid-template-columns:80px 1fr;gap:36px;align-items:start;transition:transform .25s,box-shadow .25s,border-color .25s}
.principle:hover{border-color:var(--bx-yellow);box-shadow:var(--shadow)}
.principle .p-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:54px;font-weight:800;color:var(--bx-yellow);line-height:.85;letter-spacing:-.04em}
.principle h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:26px;line-height:1.2;letter-spacing:-.02em;margin:0 0 14px}
.principle p{font-size:16px;color:var(--ink-2);line-height:1.7;margin:0;font-weight:500}
@media(max-width:680px){
  .principle{grid-template-columns:1fr;padding:32px;gap:14px}
  .principle .p-num{font-size:42px}
}

/* ---- Timeline (história) ---- */
.timeline{padding:80px 0;background:#fff}
.timeline .container{max-width:880px;position:relative}
.timeline .container::before{content:"";position:absolute;left:50%;top:80px;bottom:0;width:2px;background:linear-gradient(180deg,var(--bx-yellow) 0%,var(--line) 100%);transform:translateX(-50%)}
.tl-item{display:grid;grid-template-columns:1fr 80px 1fr;gap:0;margin-bottom:48px;align-items:start;position:relative}
.tl-item .tl-year{font-family:'Plus Jakarta Sans',sans-serif;font-size:42px;font-weight:800;color:var(--ink);letter-spacing:-.03em;text-align:right;padding-right:36px;line-height:1}
.tl-item .tl-dot{width:18px;height:18px;border-radius:50%;background:var(--bx-yellow);justify-self:center;margin-top:14px;box-shadow:0 0 0 4px #fff,0 0 0 8px var(--bg);position:relative;z-index:1}
.tl-item .tl-body{padding-left:36px}
.tl-item .tl-body h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:18px;margin:0 0 6px;letter-spacing:-.015em}
.tl-item .tl-body p{font-size:14.5px;color:var(--ink-soft);margin:0;line-height:1.6}
.tl-item:nth-child(even){grid-template-columns:1fr 80px 1fr}
.tl-item:nth-child(even) .tl-year{order:3;text-align:left;padding-right:0;padding-left:36px}
.tl-item:nth-child(even) .tl-body{order:1;text-align:right;padding-left:0;padding-right:36px}
@media(max-width:680px){
  .timeline .container::before{left:20px}
  .tl-item,.tl-item:nth-child(even){grid-template-columns:40px 1fr;gap:16px}
  .tl-item .tl-year{order:0;text-align:left;padding:0;font-size:30px;grid-column:2}
  .tl-item .tl-dot{grid-column:1;margin-top:8px}
  .tl-item .tl-body,.tl-item:nth-child(even) .tl-body{order:0;padding:0;text-align:left;grid-column:2;margin-top:6px}
  .tl-item:nth-child(even) .tl-year{padding:0}
}

/* ---- Calculadora diagnóstico ---- */
.calc-hero{padding:80px 0 60px;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);text-align:center}
.calc-hero .container{max-width:760px}
.calc-hero h1{font-size:clamp(36px,4.6vw,54px);margin-bottom:20px;line-height:1.1}
.calc-hero p{font-size:18px;color:var(--ink-soft);line-height:1.6}

.calc-tool{padding:60px 0 100px;background:var(--bg)}
.calc-tool .container{max-width:760px}
.calc-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:48px;box-shadow:var(--shadow)}
.calc-progress{display:flex;align-items:center;gap:8px;margin-bottom:36px}
.calc-progress .step-bar{flex:1;height:6px;background:var(--bg);border-radius:999px;overflow:hidden}
.calc-progress .step-bar div{height:100%;background:linear-gradient(90deg,var(--bx-yellow),var(--bx-green));transition:width .3s ease}
.calc-progress .step-count{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em}
.calc-q{display:none}
.calc-q.active{display:block;animation:fadeIn .3s}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.calc-q h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;letter-spacing:-.02em;margin:0 0 8px;line-height:1.25}
.calc-q .q-sub{font-size:14.5px;color:var(--ink-soft);margin-bottom:24px}
.calc-options{display:flex;flex-direction:column;gap:10px;margin-bottom:32px}
.calc-options label{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;transition:all .15s;font-size:15px;font-weight:600;color:var(--ink-2);background:#fff}
.calc-options label:hover{border-color:var(--bx-yellow);background:rgba(244,200,27,.04)}
.calc-options input[type=radio]{accent-color:var(--bx-yellow-d);width:18px;height:18px;cursor:pointer}
.calc-options input[type=radio]:checked + span{color:var(--ink);font-weight:800}
.calc-options label:has(input:checked){border-color:var(--bx-yellow);background:rgba(244,200,27,.08)}
.calc-nav{display:flex;justify-content:space-between;gap:14px;padding-top:24px;border-top:1px solid var(--line)}
.calc-result{display:none;animation:fadeIn .4s}
.calc-result.show{display:block}
.calc-result .r-score{text-align:center;margin-bottom:36px}
.calc-result .r-score .r-label{font-size:13px;font-weight:800;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px}
.calc-result .r-score .r-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:96px;font-weight:800;line-height:.9;letter-spacing:-.05em;background:linear-gradient(135deg,var(--bx-yellow),var(--bx-green));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:8px}
.calc-result .r-score .r-tier{font-size:15px;color:var(--ink-soft);font-weight:700}
.calc-rec{padding:28px;background:linear-gradient(135deg,var(--bg) 0%,#fff 100%);border:1px solid var(--line);border-radius:16px;margin-bottom:24px}
.calc-rec h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:20px;margin:0 0 14px}
.calc-rec p{font-size:15px;color:var(--ink-2);line-height:1.65;margin:0 0 16px}
.calc-rec .r-divs{display:flex;gap:10px;flex-wrap:wrap}
.calc-rec .r-divs span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:6px 12px;border-radius:6px;background:#fff;border:1px solid var(--line)}
.calc-rec .r-divs .d-out{color:var(--outsourcing);border-color:var(--outsourcing)}
.calc-rec .r-divs .d-fin{color:var(--finance);border-color:var(--finance)}
.calc-rec .r-divs .d-cer{color:var(--certified);border-color:var(--certified)}
.calc-capture{padding:28px;background:var(--ink);color:#fff;border-radius:16px;margin-top:24px}
.calc-capture h3{color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:20px;margin:0 0 8px}
.calc-capture p{color:#C7CCDA;font-size:14.5px;margin:0 0 18px}
.calc-capture .ccap-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.calc-capture input{width:100%;padding:12px 14px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font:inherit;font-size:14px;font-family:'Nunito',sans-serif}
.calc-capture input::placeholder{color:#8A92A6}
.calc-capture input:focus{outline:none;border-color:var(--bx-yellow);background:rgba(255,255,255,.12)}
.calc-capture button{width:100%;margin-top:10px;justify-content:center}
@media(max-width:680px){
  .calc-card{padding:32px 24px}
  .calc-capture .ccap-row{grid-template-columns:1fr}
}

/* ---- Career ---- */
.career-hero{padding:90px 0 70px;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);text-align:center}
.career-hero .container{max-width:780px}
.career-hero h1{font-size:clamp(40px,5vw,60px);margin-bottom:20px;line-height:1.1}

.culture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}
.culture-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;transition:transform .25s,border-color .25s,box-shadow .25s}
.culture-card:hover{transform:translateY(-4px);border-color:var(--bx-yellow);box-shadow:var(--shadow)}
.culture-card .cc-ic{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,var(--bx-yellow),var(--bx-yellow-d));display:grid;place-items:center;color:var(--ink);font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:18px;margin-bottom:18px}
.culture-card h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;letter-spacing:-.015em;margin:0 0 8px}
.culture-card p{font-size:14.5px;color:var(--ink-soft);margin:0;line-height:1.6}

.openings{padding:80px 0;background:var(--bg)}
.openings .container{max-width:980px}
.job-list{display:flex;flex-direction:column;gap:14px;margin-top:48px}
.job-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;transition:transform .2s,border-color .2s,box-shadow .2s}
.job-card:hover{transform:translateX(6px);border-color:var(--bx-yellow);box-shadow:var(--shadow-sm)}
.job-card .j-info h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;letter-spacing:-.015em;margin:0 0 8px}
.job-card .j-info .j-meta{display:flex;gap:12px;font-size:13px;color:var(--ink-soft);font-weight:600;flex-wrap:wrap}
.job-card .j-info .j-meta span{padding:4px 10px;background:var(--bg);border-radius:6px;font-weight:700}
.job-card .j-cta{font-weight:800;color:var(--ink);font-size:14px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.job-card .j-cta .arr{transition:transform .15s}
.job-card:hover .j-cta .arr{transform:translateX(4px)}

/* ============ PÁGINAS LEGAIS (Privacidade, Termos, LGPD) ============ */
.legal-page{padding:80px 0 120px;background:#fff}
.legal-page .container{max-width:820px}
.legal-page h1{font-size:clamp(34px,4.4vw,52px);line-height:1.1;letter-spacing:-.03em;margin-bottom:14px}
.legal-page .lead{font-size:18px;color:var(--ink-soft);margin-bottom:24px;line-height:1.6}
.legal-page .updated{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:800;color:var(--ink-soft);padding:6px 14px;border-radius:999px;background:var(--bg);text-transform:uppercase;letter-spacing:.1em;margin-bottom:40px}
.legal-page .updated::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--bx-green)}
.legal-page h2{font-size:24px;letter-spacing:-.02em;margin:48px 0 14px;padding-top:24px;border-top:1px solid var(--line)}
.legal-page h2:first-of-type{border-top:none;padding-top:0;margin-top:0}
.legal-page h3{font-size:18px;font-weight:700;margin:28px 0 10px}
.legal-page p,.legal-page ul,.legal-page ol{font-size:15.5px;line-height:1.75;color:var(--ink-2);margin-bottom:16px;font-weight:500}
.legal-page ul,.legal-page ol{padding-left:22px}
.legal-page li{margin-bottom:8px}
.legal-page strong{color:var(--ink);font-weight:800}
.legal-page a{color:var(--finance);font-weight:700}
.legal-page .callout-legal{background:var(--bg);border-left:3px solid var(--bx-yellow);padding:20px 24px;border-radius:0 12px 12px 0;margin:24px 0;font-size:14.5px;line-height:1.65}
.legal-page .toc{background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:24px 28px;margin-bottom:48px}
.legal-page .toc h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft);font-weight:800;margin:0 0 14px}
.legal-page .toc ol{margin:0;padding-left:20px;font-size:14.5px}
.legal-page .toc li{margin-bottom:6px}
.legal-page .toc a{color:var(--ink-2);font-weight:600}
.legal-page .toc a:hover{color:var(--ink)}

/* ============ RESPONSIVE ============ */
@media (max-width:1080px){
  .ihero .container,.cta-inst .container,.certified-strip .container{grid-template-columns:1fr;gap:48px}
  .split-grid,.lead-grid,.ind-grid,.integ-grid,.ins-grid,.tech-grid-inst{grid-template-columns:repeat(2,1fr)}
  .split-grid::before{display:none}
  .bignum-grid{grid-template-columns:1fr 1fr}
  .bignum{border-right:none;border-bottom:1px solid rgba(255,255,255,.1)}
  .bignum:nth-child(2){border-right:none}
  .bignum:nth-child(odd){border-right:1px solid rgba(255,255,255,.1)}
  .thesis-body{columns:1}
  .ihero-stats{grid-template-columns:1fr 1fr;gap:24px 0}
  .ihero-stats .item:nth-child(2){border-right:none;padding-right:0}
  .ihero-stats .item:nth-child(3),.ihero-stats .item:nth-child(4){padding-top:24px;border-top:1px solid var(--line)}
  .track-cases{grid-template-columns:1fr}
  .cta-inst .ci-contacts{grid-template-columns:1fr}
  .hero .container,.manifesto-grid,.ecosystem-wrap,.cta .container,.cal-wrap,.page-hero .container,.heart-grid{grid-template-columns:1fr;gap:48px}
  .case-grid,.posts,.div-cards,.tech-grid,.testim-grid,.svc-grid{grid-template-columns:repeat(2,1fr)}
  .segments-grid{grid-template-columns:repeat(2,1fr)}
  .method-grid{grid-template-columns:repeat(2,1fr);gap:32px}
  .method-grid::before{display:none}
  .menu{display:none}
  footer .grid{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  .split-grid,.lead-grid,.ind-grid,.integ-grid,.ins-grid,.tech-grid-inst,.bignum-grid{grid-template-columns:1fr}
  .bignum{border-right:none;border-bottom:1px solid rgba(255,255,255,.1)}
  .bignum:last-child{border-bottom:none}
  .ihero-stats{grid-template-columns:1fr 1fr}
  .cs-stats{gap:24px}
  .ihero,.thesis,.split,.industries,.integrated,.track,.leadership,.tech-inst,.certified-strip,.insights,.cta-inst,.faq-inst{padding:80px 0}
  .case-grid,.posts,.kpis,.tech-grid,.testim-grid,.svc-grid,.div-cards,.segments-grid,.method-grid{grid-template-columns:1fr}
  .cta-form .row{grid-template-columns:1fr}
  .hero,.page-hero{padding:40px 0 64px}
  .manifesto,.divisions,.ecosystem,.cases,.calendar,.content,.cta,.heart,.method,.tech,.testim,.faq,.section{padding:80px 0}
  footer .grid{grid-template-columns:1fr}
  .topbar .left{display:none}
  .hero-stats{gap:24px}
  .compare{font-size:13px}
  .compare th,.compare td{padding:14px 12px}
}

/* ============================================================
   ============================================================
   v2.0 — REDESIGN HOMEPAGE STORYTELLING
   Componentes novos: hero-narrative, origin-chapter, context-card,
   evolution-card, thesis-acts, trading-cards, posture-rows,
   cases-preview, cta-final
   ============================================================
   ============================================================ */

/* ---------- HERO NARRATIVE (refinement) ---------- */
.hero-narrative{padding:72px 0 110px;background:#FBF8F2;position:relative;overflow:hidden}
.hero-narrative .hero-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.hero-narrative .hero-bg .glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.55}
.hero-narrative .hero-bg .glow-y{width:540px;height:540px;background:rgba(244,200,27,.55);top:-140px;right:-100px}
.hero-narrative .hero-bg .glow-g{width:420px;height:420px;background:rgba(54,181,99,.35);bottom:-100px;left:-120px}
.hero-narrative .container{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.hero-narrative h1{font-size:clamp(40px,5.2vw,68px);letter-spacing:-.035em;line-height:1.05;margin:18px 0 22px}
.hero-narrative h1 .hl-out{font-style:italic;color:var(--outsourcing);font-weight:800}
.hero-narrative h1 .hl-fin{font-style:italic;color:var(--finance);font-weight:800}
.hero-narrative h1 .hl-dot{color:var(--bx-green)}
.hero-narrative .underline-y{position:relative;display:inline-block;white-space:nowrap}
.hero-narrative .underline-y::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:14px;background:rgba(244,200,27,.55);z-index:-1;border-radius:4px}
.hero-narrative .hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:40px;padding-top:28px;border-top:1px solid rgba(45,49,66,.12)}
.hero-narrative .hero-stats .item{padding:0 16px;border-right:1px solid rgba(45,49,66,.08)}
.hero-narrative .hero-stats .item:first-child{padding-left:0}
.hero-narrative .hero-stats .item:last-child{border-right:none;padding-right:0}
.hero-narrative .hero-stats .item b{font-size:30px}
.hero-video-wrap{position:relative;border-radius:24px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid rgba(45,49,66,.06);aspect-ratio:4/5;background:var(--ink)}
.hero-video-wrap video{width:100%;height:100%;object-fit:cover;display:block}

/* ---------- ORIGIN CHAPTER (slides 3 e 4) ---------- */
.origin-chapter{padding:110px 0;position:relative}
.origin-chapter.origin-2008{background:#fff}
.origin-chapter.origin-2011{background:#FBF8F2}
.oc-header{max-width:880px;margin:0 auto 56px;text-align:center}
.oc-header h2{margin-top:18px;font-size:clamp(34px,4.2vw,52px);letter-spacing:-.03em}
.oc-header h2 em{font-style:italic;color:var(--ink-soft);font-weight:800}
.origin-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}
.origin-grid-flipped{grid-template-columns:.95fr 1.05fr}
.origin-text .lead-text{font-size:20px;font-weight:700;color:var(--ink);line-height:1.45;margin-bottom:20px;font-family:'Plus Jakarta Sans',sans-serif}
.origin-text p{font-size:16px;line-height:1.65;color:var(--ink-soft);margin-bottom:16px}
.origin-text p strong{color:var(--ink);font-weight:800}
.quote-block{position:relative;margin-top:28px;padding:22px 26px 22px 32px;background:#fff;border-left:4px solid var(--bx-yellow);border-radius:0 12px 12px 0;box-shadow:var(--shadow-sm)}
.origin-2008 .quote-block{background:#FBF8F2}
.origin-2011 .quote-block{background:#fff}
.quote-block p{font-family:'Plus Jakarta Sans',sans-serif;font-size:16px;font-style:italic;color:var(--ink);font-weight:600;margin:0;line-height:1.5}

/* ---------- CONTEXT CARD (Setembro 2008) ---------- */
.context-card{position:relative;background:#FBF8F2;border:1px solid var(--line);border-radius:20px;padding:36px 36px 32px;box-shadow:var(--shadow-sm);overflow:hidden}
.context-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--bx-yellow)}
.cc-eyebrow{display:inline-block;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;color:var(--bx-yellow-d);letter-spacing:.22em;text-transform:uppercase;margin-bottom:8px}
.cc-title{font-family:'Plus Jakarta Sans',sans-serif;font-size:30px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin:0 0 6px}
.cc-sub{font-style:italic;color:var(--ink-soft);font-size:14px;margin:0 0 22px;line-height:1.5}
.cc-sep{border:none;border-top:1px solid var(--line);margin:0 0 22px}
.datapoints{list-style:none;padding:0;margin:0}
.datapoints li{display:flex;align-items:baseline;gap:14px;padding:10px 0;border-bottom:1px dashed rgba(45,49,66,.08)}
.datapoints li:last-child{border-bottom:none}
.datapoints li b{font-family:'Plus Jakarta Sans',sans-serif;font-size:24px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1;min-width:80px}
.datapoints li span{font-size:13px;color:var(--ink-soft);line-height:1.45;font-weight:600}
.cc-tag{margin-top:24px;padding-top:18px;border-top:1px solid rgba(45,49,66,.06);position:relative}
.cc-tag-line{display:inline-block;width:32px;height:3px;background:var(--bx-yellow);border-radius:2px;margin-bottom:10px}
.cc-tag em{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;color:var(--ink);font-style:italic;font-weight:700;line-height:1.4}

/* ---------- EVOLUTION CARD (2011 pilares + viga) ---------- */
.evolution-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:36px 30px 30px;box-shadow:var(--shadow-sm)}
.evolution-card::before{content:"";position:absolute;left:50%;top:120px;bottom:130px;width:1px;border-left:1.5px dashed rgba(138,146,166,.4);z-index:0}
.era{position:relative;z-index:1}
.era-tag{display:inline-block;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;color:var(--finance);letter-spacing:.22em;text-transform:uppercase;margin-bottom:8px}
.era-tag-out{color:var(--outsourcing)}
.era h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin:0 0 16px}
.pillars{display:flex;align-items:center;gap:12px;margin-top:6px}
.pillar{display:inline-block;width:18px;height:50px;border-radius:3px}
.pillar-fin{background:var(--finance)}
.pillar-out{background:var(--outsourcing)}
.pillars-2{position:relative;padding-top:14px}
.pillars-2 .viga{position:absolute;left:0;top:0;width:54px;height:5px;background:var(--bx-yellow);border-radius:2px}
.pillars-2 .pillar-out{margin-left:-4px}
.pillar-label{margin-left:8px}
.pillar-label b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:800;color:var(--ink)}
.pillar-label small{display:block;font-size:12px;color:var(--ink-soft);margin-top:2px;font-weight:600}
.evo-transition{display:flex;align-items:center;justify-content:center;gap:14px;margin:22px 0;position:relative;z-index:1}
.evo-side{font-style:italic;color:var(--ink-soft);font-size:12px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:600}
.evo-side-l{text-align:right;flex:1}
.evo-side-r{text-align:left;flex:1}
.evo-badge{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:var(--bx-yellow);color:var(--ink);font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:16px;border:2px solid var(--bx-yellow-d);box-shadow:0 4px 14px rgba(244,200,27,.4)}
.evo-footer{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);position:relative;z-index:1}
.ef-line{display:inline-block;width:32px;height:3px;background:var(--bx-yellow);border-radius:2px;margin-bottom:8px}
.ef-tag{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;color:var(--bx-yellow-d);letter-spacing:.22em;text-transform:uppercase;margin-bottom:4px}
.evo-footer em{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-style:italic;color:var(--ink-soft);font-weight:600}

/* ---------- THESIS SECTION (3 atos) ---------- */
.thesis-section{padding:120px 0;background:linear-gradient(180deg,#fff 0%,#F6F7FB 100%)}
.thesis-header{max-width:920px;margin:0 auto 56px;text-align:center}
.thesis-header h2{margin-top:18px;font-size:clamp(34px,4.4vw,54px);letter-spacing:-.03em;line-height:1.1}
.thesis-header h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.thesis-header h2 .hl-line{position:relative;display:inline-block;white-space:nowrap}
.thesis-header h2 .hl-line::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:12px;background:rgba(244,200,27,.4);z-index:-1;border-radius:4px}
.thesis-header h2 .hl-dot{color:var(--bx-green)}
.thesis-header .lead{max-width:680px;margin:14px auto 0;font-style:italic}
.thesis-acts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}
.act{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:38px 32px 32px;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .3s,box-shadow .3s}
.act:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.act-top{position:absolute;top:0;left:0;right:0;height:6px}
.act-01 .act-top{background:var(--ink-soft)}
.act-02 .act-top{background:var(--outsourcing)}
.act-03 .act-top{background:var(--bx-yellow)}
.act-num{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:48px;font-weight:800;letter-spacing:-.04em;line-height:1;margin-bottom:14px}
.act-01 .act-num{color:var(--ink)}
.act-02 .act-num{color:var(--outsourcing-2)}
.act-03 .act-num{color:var(--bx-yellow-d)}
.act-tag{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;margin-bottom:10px}
.act-01 .act-tag{color:var(--ink-soft)}
.act-02 .act-tag{color:var(--outsourcing)}
.act-03 .act-tag{color:var(--bx-yellow-d)}
.act h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.2;margin:0 0 14px}
.act p{font-size:14.5px;line-height:1.6;color:var(--ink-soft);margin:0}
.thesis-close{margin-top:48px;text-align:center}
.tc-line{display:inline-block;width:60px;height:2px;background:var(--bx-yellow);border-radius:2px;margin-bottom:14px}
.thesis-close em{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:17px;font-style:italic;color:var(--ink);font-weight:700}

/* ---------- COMPANIES SECTION (trading cards) ---------- */
.companies-section{padding:120px 0;background:#fff}
.comp-header{max-width:860px;margin:0 auto 56px;text-align:center}
.comp-header h2{margin-top:18px}
.comp-header h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.trading-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.tc{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column}
.tc:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.tc-head{position:relative;padding:24px 26px 28px;color:#fff;min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.tc-head::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:rgba(0,0,0,.18)}
.tc-out .tc-head{background:linear-gradient(135deg,var(--outsourcing) 0%,var(--outsourcing-2) 100%)}
.tc-fin .tc-head{background:linear-gradient(135deg,var(--finance) 0%,var(--finance-2) 100%)}
.tc-cer .tc-head{background:linear-gradient(135deg,var(--certified) 0%,var(--certified-2) 100%)}
.tc-num{position:absolute;top:18px;left:24px;font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:800;color:#fff;letter-spacing:.22em;opacity:.85}
.tc-co{position:absolute;top:20px;right:24px;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;color:#fff;letter-spacing:.22em;opacity:.85}
.tc-logo{height:62px;width:auto;object-fit:contain;margin-top:14px}
.tc-body{padding:28px 26px 26px;display:flex;flex-direction:column;gap:14px;flex:1}
.tc-body h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.2;margin:0}
.tc-body p{font-size:14.5px;line-height:1.6;color:var(--ink-soft);margin:0;flex:1}
.tc-kpi{display:flex;align-items:baseline;gap:10px;padding-top:14px;border-top:1px solid var(--line);margin-top:auto}
.tc-kpi b{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;letter-spacing:-.02em;font-size:24px;line-height:1}
.tc-out .tc-kpi b{color:var(--outsourcing)}
.tc-fin .tc-kpi b{color:var(--finance)}
.tc-cer .tc-kpi b{color:var(--certified)}
.tc-kpi span{font-size:12px;color:var(--ink-soft);font-weight:600;letter-spacing:.04em}
.tc-cta{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:14px;color:var(--ink);margin-top:6px;border-top:1px dashed transparent;padding-top:4px;transition:gap .2s}
.tc-cta:hover{gap:12px}
.tc-out .tc-cta{color:var(--outsourcing)}
.tc-fin .tc-cta{color:var(--finance)}
.tc-cer .tc-cta{color:var(--certified)}

/* ---------- POSTURE SECTION (4 compromissos + NUNCA) ---------- */
.posture-section{padding:120px 0;background:#FBF8F2}
.posture-header{max-width:860px;margin:0 auto 48px;text-align:center}
.posture-header h2{margin-top:18px}
.posture-header h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.posture-header .lead{font-style:italic;max-width:620px;margin:14px auto 0}
.posture-rows{display:flex;flex-direction:column;gap:14px}
.prow{display:grid;grid-template-columns:90px auto 1fr 320px;gap:18px;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 26px;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s}
.prow:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.prow-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:48px;font-weight:800;color:var(--bx-yellow-d);letter-spacing:-.04em;line-height:1;display:flex;align-items:center;justify-content:center}
.prow-line{width:3px;background:var(--bx-yellow);border-radius:2px;align-self:stretch;min-height:60px}
.prow-content{display:flex;flex-direction:column;justify-content:center;gap:6px}
.prow-content h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin:0;line-height:1.25}
.prow-content p{font-size:14px;line-height:1.55;color:var(--ink-soft);margin:0}
.prow-nunca{position:relative;background:var(--outsourcing-light);border-radius:12px;padding:14px 18px 14px 20px;display:flex;flex-direction:column;justify-content:center;gap:4px}
.prow-nunca::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;background:var(--outsourcing);border-radius:2px}
.pn-eyebrow{font-family:'Plus Jakarta Sans',sans-serif;font-size:10px;font-weight:800;color:var(--outsourcing);letter-spacing:.22em;text-transform:uppercase}
.prow-nunca em{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;color:var(--ink);font-style:italic;font-weight:600;line-height:1.4}

/* ---------- CASES PREVIEW ---------- */
.cases-preview{padding:120px 0;background:#fff}
.cp-header{max-width:780px;margin:0 auto 48px;text-align:center}
.cp-header h2{margin-top:18px}
.cp-header h2 em{font-style:italic;color:var(--ink-soft);font-weight:800}
.cp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cp-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px 28px 28px;box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s;overflow:hidden}
.cp-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.cp-top{position:absolute;top:0;left:0;right:0;height:5px;background:var(--bx-yellow)}
.cp-tag{display:inline-block;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;color:var(--bx-yellow-d);letter-spacing:.22em;text-transform:uppercase;margin-bottom:10px}
.cp-result{font-family:'Plus Jakarta Sans',sans-serif;font-size:54px;font-weight:800;color:var(--ink);letter-spacing:-.04em;line-height:1;margin-bottom:16px}
.cp-card h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.25;margin:0 0 12px}
.cp-card p{font-size:14px;line-height:1.6;color:var(--ink-soft);margin:0 0 18px;min-height:80px}
.cp-divs{display:flex;gap:8px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--line)}
.cp-div{font-family:'Plus Jakarta Sans',sans-serif;font-size:10.5px;font-weight:800;letter-spacing:.1em;padding:5px 10px;border-radius:6px}
.cp-div.out{background:var(--outsourcing-light);color:var(--outsourcing)}
.cp-div.fin{background:var(--finance-light);color:var(--finance)}
.cp-cta{text-align:center;margin-top:40px}

/* ---------- CTA FINAL ---------- */
.cta-final{position:relative;padding:120px 0;background:#FBF8F2;overflow:hidden}
.cta-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.cta-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.45}
.cg-y{width:520px;height:520px;background:rgba(244,200,27,.6);top:-160px;left:-100px}
.cg-g{width:400px;height:400px;background:rgba(54,181,99,.4);bottom:-140px;right:-80px}
.cta-final .container{position:relative;z-index:2}
.cta-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.cta-text h2{margin-top:18px;font-size:clamp(46px,6vw,76px);letter-spacing:-.04em;line-height:1}
.cta-text h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.cta-text h2 .hl-dot{color:var(--bx-green)}
.cta-text .lead{max-width:520px;margin-top:14px}
.cta-text .ctas{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.cta-contact{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 0;box-shadow:var(--shadow)}
.cc-row{display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:center;padding:16px 24px;border-bottom:1px solid var(--line)}
.cc-row:last-child{border-bottom:none}
.cc-row span{font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;color:var(--muted);letter-spacing:.22em;text-transform:uppercase}
.cc-row b{font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;font-weight:800;color:var(--ink);letter-spacing:-.01em}

/* ---------- RESPONSIVE (homepage v2) ---------- */
@media (max-width:1024px){
  .hero-narrative .container,.origin-grid,.origin-grid-flipped,.cta-grid{grid-template-columns:1fr;gap:48px}
  .hero-video-wrap{aspect-ratio:16/10;max-width:560px;margin:0 auto}
  .thesis-acts,.trading-cards,.cp-grid{grid-template-columns:1fr}
  .prow{grid-template-columns:60px auto 1fr;gap:14px}
  .prow-nunca{grid-column:1 / -1;margin-top:8px}
  .evolution-card::before{display:none}
  .hero-narrative .hero-stats{grid-template-columns:repeat(2,1fr);gap:18px 0}
  .hero-narrative .hero-stats .item:nth-child(2){border-right:none}
  .hero-narrative .hero-stats .item:nth-child(3),
  .hero-narrative .hero-stats .item:nth-child(4){border-top:1px solid rgba(45,49,66,.08);padding-top:18px}
}
@media (max-width:680px){
  .hero-narrative,.origin-chapter,.thesis-section,.companies-section,.posture-section,.cases-preview,.cta-final{padding:80px 0}
  .hero-narrative h1{font-size:36px}
  .cta-text h2{font-size:54px}
  .prow{grid-template-columns:50px 1fr;padding:18px}
  .prow-line{display:none}
  .prow-num{font-size:36px}
  .cp-result{font-size:42px}
  .cc-row{grid-template-columns:1fr;gap:4px}
}

/* ============================================================
   ============================================================
   v3.0 — Manifesto, Routing, Sócios, Voices, Newsletter
   ============================================================
   ============================================================ */

/* ---------- ROUTING "Qual sua situação?" ---------- */
.routing-section{padding:88px 0 80px;background:linear-gradient(180deg,#FBF8F2 0%,#fff 100%)}
.routing-header{max-width:760px;margin:0 auto 40px;text-align:center}
.routing-header h2{font-size:clamp(28px,3.4vw,40px);margin-top:14px;letter-spacing:-.025em}
.routing-header h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.routing-header .lead{font-style:italic;max-width:560px;margin:8px auto 0}
.routing-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}
.rcard{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 22px 22px;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;overflow:hidden}
.rcard::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--bx-yellow);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.rcard:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(244,200,27,.6)}
.rcard:hover::before{transform:scaleX(1)}
.rcard-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;color:var(--bx-yellow-d);letter-spacing:.18em}
.rcard h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:18px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin:0;line-height:1.25}
.rcard p{font-size:13.5px;color:var(--ink-soft);line-height:1.55;margin:0;flex:1}
.rcard-cta{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:var(--ink);margin-top:auto}
.rcard-cta .arrow{transition:transform .2s;display:inline-block}
.rcard:hover .rcard-cta .arrow{transform:translateX(4px)}

/* ---------- MANIFESTO BX (dark hero treatment) ---------- */
.manifesto-section{padding:130px 0;background:#1F2233;color:#fff;position:relative;overflow:hidden}
.manifesto-section::before{content:"";position:absolute;top:-200px;right:-200px;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(244,200,27,.20) 0%,transparent 70%);pointer-events:none}
.manifesto-section::after{content:"";position:absolute;bottom:-200px;left:-200px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(54,181,99,.13) 0%,transparent 70%);pointer-events:none}
.manifesto-wrap{position:relative;z-index:2;max-width:840px;margin:0 auto}
.manifesto-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;color:var(--bx-yellow);letter-spacing:.28em;text-transform:uppercase;padding:7px 16px;background:rgba(244,200,27,.10);border:1px solid rgba(244,200,27,.32);border-radius:999px;margin-bottom:26px}
.manifesto-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--bx-yellow);box-shadow:0 0 12px var(--bx-yellow)}
.manifesto-section h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(32px,4.2vw,52px);font-weight:800;color:#fff;letter-spacing:-.028em;line-height:1.12;margin:0 0 40px}
.manifesto-section h2 em{font-style:italic;color:var(--bx-yellow);font-weight:800}
.manifesto-body p{font-family:'Nunito',sans-serif;font-size:17.5px;line-height:1.78;color:rgba(255,255,255,.78);margin:0 0 22px;font-weight:500}
.manifesto-body p strong{color:#fff;font-weight:700}
.manifesto-body p em{font-style:italic;color:rgba(255,255,255,.92)}
.manifesto-pullquote{margin:52px 0 0;padding:38px 0 0;position:relative;border-top:1px solid rgba(255,255,255,.12)}
.manifesto-pullquote::before{content:"";position:absolute;top:-1.5px;left:0;width:96px;height:3px;background:var(--bx-yellow);border-radius:2px}
.manifesto-pullquote em{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:clamp(26px,3.4vw,38px);font-style:italic;font-weight:800;color:var(--bx-yellow);letter-spacing:-.02em;line-height:1.2}
.manifesto-pullquote span{display:block;margin-top:14px;font-size:14px;color:rgba(255,255,255,.55);font-weight:600;letter-spacing:.04em}

/* ---------- SÓCIOS STRIP ---------- */
.socios-section{padding:110px 0;background:#fff}
.socios-header{max-width:780px;margin:0 auto 48px;text-align:center}
.socios-header h2{margin-top:14px}
.socios-header h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.socios-header .lead{margin-top:10px;max-width:600px;margin-left:auto;margin-right:auto}
.socios-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:14px}
.socio-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 14px 18px;text-align:center;transition:transform .25s,box-shadow .25s,border-color .25s;text-decoration:none;color:inherit;display:flex;flex-direction:column;align-items:center}
.socio-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(244,200,27,.5)}
.socio-mono{width:62px;height:62px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-family:'Plus Jakarta Sans',sans-serif;font-size:22px;font-weight:800;letter-spacing:-1px}
.socio-mono.fin{background:var(--finance-light);color:var(--finance);border:1px solid rgba(91,87,168,.28)}
.socio-mono.out{background:var(--outsourcing-light);color:var(--outsourcing);border:1px solid rgba(244,148,35,.28)}
.socio-name{font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:800;color:var(--ink);letter-spacing:-.01em;margin:0 0 4px}
.socio-role{font-size:10.5px;color:var(--muted);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;line-height:1.3}
.socio-quote{font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-style:italic;color:var(--ink-soft);line-height:1.4;margin:0;font-weight:600}
.socios-cta{text-align:center;margin-top:40px}

/* ---------- VOZ DOS CLIENTES (quotes) ---------- */
.voices-section{padding:110px 0;background:#FBF8F2}
.voices-header{max-width:780px;margin:0 auto 48px;text-align:center}
.voices-header h2{margin-top:14px}
.voices-header h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.voices-header .lead{font-style:italic;margin-top:10px;max-width:580px;margin-left:auto;margin-right:auto}
.voices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.voice-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px 28px;box-shadow:var(--shadow-sm);position:relative;display:flex;flex-direction:column;gap:18px;transition:transform .25s,box-shadow .25s}
.voice-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.voice-mark{font-family:'Plus Jakarta Sans',sans-serif;font-size:60px;color:var(--bx-yellow);line-height:.4;font-weight:800;margin-top:8px}
.voice-text{font-family:'Plus Jakarta Sans',sans-serif;font-size:15.5px;line-height:1.55;color:var(--ink);font-style:italic;font-weight:600;margin:0;flex:1}
.voice-author{padding-top:18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:3px}
.voice-author b{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;color:var(--ink);letter-spacing:.02em}
.voice-author span{font-size:12px;color:var(--ink-soft);font-weight:600}
.voice-note{text-align:center;margin-top:24px;font-size:12px;color:var(--muted);font-style:italic}

/* ---------- NEWSLETTER STRIP ---------- */
.newsletter-strip{padding:56px 0;background:linear-gradient(135deg,#FBF8F2 0%,#fff 100%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.newsletter-wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}
.newsletter-text h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:26px;font-weight:800;color:var(--ink);letter-spacing:-.02em;margin:0 0 8px;line-height:1.2}
.newsletter-text h3 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.newsletter-text p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.5}
.newsletter-form{display:flex;gap:10px}
.newsletter-form input{flex:1;padding:14px 18px;border:1px solid var(--line);border-radius:12px;font-family:'Nunito',sans-serif;font-size:15px;background:#fff;color:var(--ink);font-weight:600;transition:border-color .15s,box-shadow .15s}
.newsletter-form input:focus{outline:none;border-color:var(--bx-yellow);box-shadow:0 0 0 3px rgba(244,200,27,.15)}
.newsletter-form button{padding:14px 24px;background:var(--ink);color:#fff;border:none;border-radius:12px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:800;cursor:pointer;transition:transform .15s,box-shadow .15s;white-space:nowrap}
.newsletter-form button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(45,49,66,.25)}
.newsletter-priv{font-size:11px;color:var(--muted);margin-top:8px}
.newsletter-priv a{color:var(--ink-soft);text-decoration:underline}

/* ---------- RESPONSIVE v3 ---------- */
@media (max-width:1024px){
  .routing-cards{grid-template-columns:repeat(2,1fr)}
  .socios-grid{grid-template-columns:repeat(4,1fr);gap:12px}
  .voices-grid{grid-template-columns:1fr;gap:16px}
  .newsletter-wrap{grid-template-columns:1fr;gap:24px;text-align:center}
  .newsletter-form{max-width:520px;margin:0 auto}
}
@media (max-width:680px){
  .routing-cards{grid-template-columns:1fr}
  .socios-grid{grid-template-columns:repeat(2,1fr)}
  .manifesto-section{padding:80px 0}
  .manifesto-body p{font-size:16px}
  .newsletter-form{flex-direction:column}
  .voice-card{padding:26px 22px}
}

/* ============================================================
   v4.0 — /grupo: hero manifesto, 3 eras, 3 valores
   ============================================================ */

/* manifesto como hero do /grupo */
.manifesto-section.grupo-hero{padding:96px 0 110px}
.manifesto-section.grupo-hero .manifesto-eyebrow{margin-bottom:20px}

/* 3 ERAS */
.grupo-eras{padding:120px 0;background:#fff}
.ge-header{max-width:840px;margin:0 auto 56px;text-align:center}
.ge-header h2{margin-top:14px}
.ge-header h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.ge-header .lead{margin-top:10px;max-width:680px;margin-left:auto;margin-right:auto;font-style:italic}
.eras-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.era-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px 26px 24px;box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s;overflow:hidden;display:flex;flex-direction:column}
.era-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.era-top{position:absolute;top:0;left:0;right:0;height:5px;background:var(--bx-yellow)}
.era-card .era-tag{display:inline-block;font-family:'Plus Jakarta Sans',sans-serif;font-size:10.5px;font-weight:800;color:var(--bx-yellow-d);letter-spacing:.22em;text-transform:uppercase;margin:6px 0 6px}
.era-card h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:28px;font-weight:800;color:var(--ink);letter-spacing:-.03em;margin:0 0 10px}
.era-card .era-brief{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-style:italic;color:var(--ink-soft);line-height:1.5;margin:0 0 14px;font-weight:600}
.era-card hr{border:none;border-top:1px solid var(--line);margin:0 0 14px}
.era-milestones{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:10px}
.era-milestones li{display:flex;align-items:baseline;gap:14px}
.era-milestones li b{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:800;letter-spacing:-.01em;min-width:38px}
.era-milestones li span{font-size:12.5px;color:var(--ink);font-weight:600;line-height:1.4}
.era-kpi{margin-top:auto;background:var(--bg);border-radius:12px;padding:18px 16px 16px;position:relative;border-top:3px solid var(--bx-yellow)}
.era-kpi b{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:32px;font-weight:800;color:var(--ink);letter-spacing:-.03em;line-height:1}
.era-kpi span{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:10px;font-weight:800;color:var(--bx-yellow-d);letter-spacing:.24em;margin:6px 0 8px}
.era-kpi em{display:block;font-family:'Nunito',sans-serif;font-size:11.5px;font-style:italic;color:var(--ink-soft);line-height:1.4;font-weight:600}

/* 3 VALORES */
.grupo-values{padding:120px 0;background:#FBF8F2}
.gv-header{max-width:780px;margin:0 auto 48px;text-align:center}
.gv-header h2{margin-top:14px}
.gv-header h2 em{font-style:italic;color:var(--bx-yellow-d);font-weight:800}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm)}
.value-col{padding:36px 32px 32px;border-right:1px solid var(--line);display:flex;flex-direction:column;position:relative}
.value-col:last-child{border-right:none}
.value-num{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:42px;font-weight:800;letter-spacing:-.04em;line-height:1;margin-bottom:8px}
.value-line{display:inline-block;width:46px;height:3px;border-radius:2px;margin-bottom:18px}
.value-col h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:26px;font-weight:800;color:var(--ink);letter-spacing:-.025em;margin:0 0 14px;line-height:1.2}
.value-col p{font-size:14px;line-height:1.62;color:var(--ink-soft);margin:0 0 22px;flex:1}
.value-practice{background:var(--bg);border-radius:10px;padding:14px 16px}
.vp-eyebrow{display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:10px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;margin-bottom:6px}
.value-practice em{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-style:italic;color:var(--ink);font-weight:600;line-height:1.45}

/* ---------- RESPONSIVE v4 ---------- */
@media (max-width:1024px){
  .eras-grid{grid-template-columns:1fr;gap:16px}
  .values-grid{grid-template-columns:1fr}
  .value-col{border-right:none;border-bottom:1px solid var(--line)}
  .value-col:last-child{border-bottom:none}
}
@media (max-width:680px){
  .grupo-eras,.grupo-values{padding:80px 0}
  .manifesto-section.grupo-hero{padding:64px 0 80px}
}

/* ============================================================
   v4.1 — Fix: KPI band harmonioso (correção da tarja preta)
   - tc-kpi ganha bg tingido na cor da empresa + accent amarelo top
   - reset defensivo para outros blocos que eram <footer>
   ============================================================ */

/* TRADING CARDS — KPI block redesenhado: sanduíche colorido */
.tc-kpi{
  margin-top:auto;
  padding:16px 18px 14px;
  border-radius:10px;
  background:var(--bg);
  color:var(--ink);
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  position:relative;
  overflow:hidden;
  border-top:none;
}
.tc-kpi::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:2px;
  background:var(--bx-yellow);
  opacity:.9;
}
.tc-out .tc-kpi{background:var(--outsourcing-light)}
.tc-fin .tc-kpi{background:var(--finance-light)}
.tc-cer .tc-kpi{background:var(--certified-light)}
.tc-kpi b{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:800;
  letter-spacing:-.025em;
  font-size:26px;
  line-height:1;
}
.tc-out .tc-kpi b{color:var(--outsourcing)}
.tc-fin .tc-kpi b{color:var(--finance)}
.tc-cer .tc-kpi b{color:var(--certified)}
.tc-kpi span{
  font-size:11.5px;
  color:var(--ink-soft);
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  text-align:right;
}

/* CASES PREVIEW — defensive reset */
.cp-divs{
  background:transparent !important;
  color:inherit !important;
  padding:16px 0 0 0 !important;
  margin:0 !important;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  border-top:1px solid var(--line);
}

/* VOICES — defensive reset */
.voice-author{
  background:transparent !important;
  color:inherit !important;
  padding:18px 0 0 0 !important;
  margin:0 !important;
  display:flex;
  flex-direction:column;
  gap:3px;
  border-top:1px solid var(--line);
}
.voice-author b{
  color:var(--ink) !important;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:13px;
  font-weight:800;
}
.voice-author span{
  color:var(--ink-soft) !important;
  font-size:12px;
  font-weight:600;
}

/* /grupo era-kpi — garantir bg claro (mesmo se algum <footer> persistir) */
.era-kpi{
  background:var(--bg) !important;
  color:var(--ink) !important;
  padding:18px 16px 16px !important;
}

/* ============================================================
   v4.2 — Fix: legibilidade dos labels do header dos trading cards
   - tc-num/tc-co viram pills com backdrop escuro + uppercase
   - aumenta contraste de branco sobre cores saturadas
   ============================================================ */
.tc-num{
  position:absolute;
  top:16px;
  left:18px;
  display:inline-flex;
  align-items:center;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11.5px;
  font-weight:800;
  color:#fff;
  letter-spacing:.18em;
  text-transform:uppercase;
  padding:5px 11px;
  background:rgba(0,0,0,.22);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  border-radius:999px;
  opacity:1;
  line-height:1;
}
.tc-co{
  position:absolute;
  top:16px;
  right:18px;
  left:auto;
  display:inline-flex;
  align-items:center;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11.5px;
  font-weight:800;
  color:#fff;
  letter-spacing:.16em;
  text-transform:uppercase;
  padding:5px 12px;
  background:rgba(0,0,0,.22);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  border-radius:999px;
  opacity:1;
  line-height:1;
  width:auto;
}

/* logo central do trading card: garantir espaço respirado */
.tc-head{padding-top:18px;padding-bottom:24px}
.tc-logo{height:64px;margin-top:6px}

/* ============================================================
   v4.3 — Casa BX (substitui o vídeo de xadrez no hero)
   Visual arquitetônico nativo: pilares + viga amarela + label.
   Animação de reveal no page load, depois estático.
   ============================================================ */

.casa-bx{
  position:relative;
  aspect-ratio:4/5;
  background:linear-gradient(180deg,#FFFCF1 0%,#FBF8F2 45%,#F5EFDE 100%);
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(45,49,66,.08);
  box-shadow:0 12px 32px rgba(45,49,66,.10),0 40px 80px rgba(45,49,66,.10);
}

/* glows ambientes */
.casa-bg-glow{
  position:absolute;
  border-radius:50%;
  filter:blur(50px);
  pointer-events:none;
}
.casa-bg-glow-y{
  top:-80px;right:-80px;
  width:340px;height:340px;
  background:radial-gradient(circle,rgba(244,200,27,.55) 0%,transparent 70%);
}
.casa-bg-glow-g{
  bottom:-60px;left:-60px;
  width:240px;height:240px;
  background:radial-gradient(circle,rgba(54,181,99,.35) 0%,transparent 70%);
}

/* floor — linha de base sutil */
.casa-floor{
  position:absolute;
  bottom:21%;
  left:12%;right:12%;
  height:1px;
  background:linear-gradient(90deg,transparent 0%,rgba(45,49,66,.20) 20%,rgba(45,49,66,.32) 50%,rgba(45,49,66,.20) 80%,transparent 100%);
  z-index:1;
}

/* viga amarela (BX Group une os dois pilares) */
.casa-viga{
  position:absolute;
  top:26%;
  left:22%;right:22%;
  height:9px;
  background:linear-gradient(90deg,#D6A914 0%,#F4C81B 30%,#FCDD4D 50%,#F4C81B 70%,#D6A914 100%);
  border-radius:5px;
  box-shadow:0 6px 18px rgba(244,200,27,.45),inset 0 -1px 0 rgba(0,0,0,.08);
  z-index:3;
  transform-origin:center top;
  animation:casa-viga-land 1s cubic-bezier(.2,.85,.25,1) .85s both;
}
.casa-viga-tag{
  position:absolute;
  top:calc(26% - 26px);
  left:50%;
  transform:translateX(-50%);
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--bx-yellow-d);
  letter-spacing:.22em;
  text-transform:uppercase;
  z-index:4;
  animation:casa-fade 1s ease 1.3s both;
}

/* pilares */
.casa-pilar{
  position:absolute;
  bottom:21%;
  width:22px;
  border-radius:4px 4px 0 0;
  z-index:2;
  transform-origin:bottom center;
}
.casa-pilar-fin{
  left:30%;
  height:50%;
  background:linear-gradient(180deg,#7570C4 0%,#5B57A8 35%,#3D3A7A 100%);
  box-shadow:0 8px 18px rgba(91,87,168,.35),inset -2px 0 0 rgba(0,0,0,.10);
  animation:casa-pilar-rise 1s cubic-bezier(.2,.85,.25,1) .3s both;
}
.casa-pilar-out{
  right:30%;
  height:50%;
  background:linear-gradient(180deg,#FFB35E 0%,#F49423 35%,#B86D14 100%);
  box-shadow:0 8px 18px rgba(244,148,35,.35),inset -2px 0 0 rgba(0,0,0,.08);
  animation:casa-pilar-rise 1s cubic-bezier(.2,.85,.25,1) .55s both;
}
.casa-pilar-tag{
  position:absolute;
  bottom:14%;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  z-index:4;
  animation:casa-fade 1s ease 1.5s both;
}
.casa-pilar-tag-fin{
  left:21%;
  right:auto;
  color:var(--finance);
}
.casa-pilar-tag-out{
  right:21%;
  left:auto;
  color:var(--outsourcing);
}

/* center label */
.casa-center{
  position:absolute;
  top:42%;
  left:50%;
  transform:translateX(-50%);
  text-align:center;
  z-index:5;
  width:80%;
  animation:casa-fade 1s ease 1.7s both;
}
.casa-eyebrow{
  display:inline-block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;
  font-weight:800;
  color:var(--ink-soft);
  letter-spacing:.26em;
  text-transform:uppercase;
  padding:5px 14px;
  background:rgba(255,255,255,.7);
  border:1px solid rgba(45,49,66,.08);
  border-radius:999px;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  margin-bottom:14px;
}
.casa-title{
  display:block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:clamp(24px,2.6vw,32px);
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.025em;
  line-height:1.05;
  margin-bottom:16px;
}
.casa-title em{
  font-style:italic;
  color:var(--bx-yellow-d);
}
.casa-stat{
  display:inline-flex;
  align-items:baseline;
  gap:8px;
  padding:8px 16px;
  background:rgba(255,255,255,.85);
  border:1px solid rgba(45,49,66,.10);
  border-radius:999px;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 4px 12px rgba(45,49,66,.06);
}
.casa-stat b{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:20px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.025em;
  line-height:1;
}
.casa-stat span{
  font-size:11px;
  color:var(--ink-soft);
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* animações */
@keyframes casa-pilar-rise{
  0%{transform:scaleY(0);opacity:.4}
  100%{transform:scaleY(1);opacity:1}
}
@keyframes casa-viga-land{
  0%{transform:translateY(-40px) scaleX(.7);opacity:0}
  60%{transform:translateY(0) scaleX(.7);opacity:.85}
  100%{transform:translateY(0) scaleX(1);opacity:1}
}
@keyframes casa-fade{
  0%{opacity:0;transform:translateY(6px)}
  100%{opacity:1;transform:translateY(0)}
}
.casa-center{animation-name:casa-fade-center}
@keyframes casa-fade-center{
  0%{opacity:0;transform:translateX(-50%) translateY(6px)}
  100%{opacity:1;transform:translateX(-50%) translateY(0)}
}

/* respeitar prefers-reduced-motion */
@media (prefers-reduced-motion:reduce){
  .casa-pilar,.casa-viga,.casa-center,.casa-viga-tag,.casa-pilar-tag{
    animation:none !important;
    opacity:1 !important;
    transform:none !important;
  }
  .casa-center{transform:translateX(-50%) !important}
}

/* mobile: container menor */
@media (max-width:1024px){
  .casa-bx{max-width:380px;margin:0 auto}
}

/* ============================================================
   v4.4 — Evolution Card v2 (Cap 02): pilares reais, ghost, viga,
   stat row, transit pulsante. Anima on-scroll.
   ============================================================ */
.evolution-card.evo-v2{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:0;
  overflow:hidden;
  box-shadow:0 4px 12px rgba(45,49,66,.06),0 24px 48px rgba(45,49,66,.08);
}
.evolution-card.evo-v2::before{display:none}

.evo-era{
  padding:34px 36px 28px;
  position:relative;
}
.evo-era-1{background:linear-gradient(180deg,#fff 0%,#FAF9FE 100%)}
.evo-era-2{background:linear-gradient(180deg,#FFFCF1 0%,#F8F2DD 100%)}

.evo-era-head{margin-bottom:6px}
.evo-era-tag{
  display:inline-block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
  margin-bottom:14px;
  padding:5px 13px;
  background:rgba(255,255,255,.85);
  border:1px solid rgba(45,49,66,.08);
  border-radius:999px;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.evo-era-tag.tag-fin{color:var(--finance);border-color:rgba(91,87,168,.2)}
.evo-era-tag.tag-yellow{color:var(--bx-yellow-d);border-color:rgba(244,200,27,.3)}
.evo-era h3{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:22px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.025em;
  line-height:1.2;
  margin:0 0 8px;
}
.evo-era p{
  font-size:13.5px;
  line-height:1.55;
  color:var(--ink-soft);
  margin:0;
}

/* STAGE - área visual */
.evo-stage{
  position:relative;
  height:210px;
  margin:26px 0 22px;
}
.evo-floor{
  position:absolute;
  bottom:28px;
  left:8%;right:8%;
  height:1px;
  background:linear-gradient(90deg,transparent 0%,rgba(45,49,66,.18) 20%,rgba(45,49,66,.32) 50%,rgba(45,49,66,.18) 80%,transparent 100%);
  z-index:1;
}
.evo-floor::after{
  content:"";
  position:absolute;
  top:1px;
  left:18%;right:18%;
  height:10px;
  background:radial-gradient(ellipse at center top,rgba(45,49,66,.10) 0%,transparent 70%);
  filter:blur(2px);
}

/* PILLAR PAIR — centraliza o conjunto */
.evo-pillar-pair{
  position:absolute;
  bottom:29px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  align-items:flex-end;
  gap:36px;
  z-index:2;
}

/* PILLAR — coluna arquitetônica */
.evo-pillar{
  width:32px;
  height:130px;
  border-radius:6px 6px 0 0;
  position:relative;
  transform-origin:bottom center;
}
.evo-pillar.pillar-fin{
  background:linear-gradient(180deg,#8a85d0 0%,#5B57A8 30%,#3D3A7A 100%);
  box-shadow:
    0 14px 30px rgba(91,87,168,.42),
    inset -4px 0 0 rgba(0,0,0,.14),
    inset 3px 0 0 rgba(255,255,255,.18);
}
.evo-pillar.pillar-out{
  background:linear-gradient(180deg,#ffbc73 0%,#F49423 30%,#B86D14 100%);
  box-shadow:
    0 14px 30px rgba(244,148,35,.42),
    inset -4px 0 0 rgba(0,0,0,.12),
    inset 3px 0 0 rgba(255,255,255,.18);
}
.evo-pillar.pillar-ghost{
  background:transparent;
  border:1.5px dashed rgba(244,148,35,.55);
  box-shadow:none;
  border-radius:6px;
}

/* PILLAR NAMES — abaixo do floor */
.evo-pillar-names{
  position:absolute;
  bottom:4px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:36px;
  z-index:2;
}
.evo-pillar-names span{
  width:64px;
  text-align:center;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  line-height:1.3;
}
.name-fin{color:var(--finance)}
.name-out{color:var(--outsourcing)}
.name-ghost{
  color:rgba(244,148,35,.45);
  font-size:14px !important;
  letter-spacing:0 !important;
  font-style:italic;
}

/* VIGA — sobre os pilares */
.evo-viga{
  position:absolute;
  bottom:calc(29px + 130px - 6px);
  left:50%;
  transform:translateX(-50%);
  width:104px;
  height:12px;
  background:linear-gradient(90deg,#D6A914 0%,#F4C81B 30%,#FCDD4D 50%,#F4C81B 70%,#D6A914 100%);
  border-radius:6px;
  box-shadow:0 8px 22px rgba(244,200,27,.55),inset 0 -1px 0 rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.4);
  z-index:3;
}
.viga-tag{
  position:absolute;
  top:-28px;
  left:50%;
  transform:translateX(-50%);
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--bx-yellow-d);
  letter-spacing:.22em;
  text-transform:uppercase;
  white-space:nowrap;
  padding:4px 11px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(244,200,27,.35);
  border-radius:999px;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

/* STAT row no rodapé de cada era */
.evo-era-stat{
  display:flex;
  align-items:baseline;
  gap:12px;
  padding-top:14px;
  border-top:1px dashed rgba(45,49,66,.14);
}
.stat-num{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:28px;
  font-weight:800;
  letter-spacing:-.03em;
  line-height:1;
}
.evo-era-1 .stat-num{color:var(--finance)}
.evo-era-2 .stat-num{color:var(--bx-yellow-d)}
.stat-label{
  font-size:11.5px;
  color:var(--ink-soft);
  font-weight:700;
  letter-spacing:.06em;
}

/* TRANSIT bar entre eras */
.evo-transit{
  display:flex;
  align-items:center;
  gap:14px;
  padding:24px 36px;
  background:linear-gradient(90deg,#FAF9FE 0%,#FBF8F2 50%,#FDFAF1 100%);
  border-top:1px solid rgba(45,49,66,.06);
  border-bottom:1px solid rgba(45,49,66,.06);
  position:relative;
}
.transit-side{
  flex:1;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:12px;
  font-style:italic;
  color:var(--ink-soft);
  font-weight:600;
}
.side-l{text-align:right}
.side-r{text-align:left}
.transit-badge{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:62px;height:62px;
  border-radius:50%;
  background:radial-gradient(circle at 32% 28%,#FCDD4D 0%,#F4C81B 60%,#D6A914 100%);
  box-shadow:0 8px 22px rgba(244,200,27,.55),inset 0 -2px 0 rgba(0,0,0,.10);
  flex-shrink:0;
}
.badge-year{
  position:relative;
  z-index:2;
  color:var(--ink);
  font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:800;
  font-size:15.5px;
  letter-spacing:-.02em;
}
.badge-spark{
  position:absolute;
  inset:-8px;
  border-radius:50%;
  border:1.5px dashed rgba(244,200,27,.55);
  animation:transit-pulse 3s ease-in-out infinite;
}
@keyframes transit-pulse{
  0%,100%{opacity:.35;transform:scale(1)}
  50%{opacity:.75;transform:scale(1.10)}
}

/* DECLARAÇÃO final */
.evo-decl{
  padding:30px 36px;
  background:linear-gradient(180deg,#FDFAF1 0%,#FBF8F2 100%);
}
.decl-line{
  display:inline-block;
  width:50px;height:3px;
  background:var(--bx-yellow);
  border-radius:2px;
  margin-bottom:12px;
}
.decl-tag{
  display:block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;
  font-weight:800;
  color:var(--bx-yellow-d);
  letter-spacing:.24em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.evo-decl em{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-style:italic;
  font-size:15px;
  color:var(--ink);
  font-weight:700;
}

/* ============ ANIMAÇÃO ON-SCROLL ============ */
.evolution-card.evo-v2 .evo-pillar{
  transform:scaleY(.04);
  transition:transform 1s cubic-bezier(.2,.85,.25,1);
}
.evolution-card.evo-v2 .evo-viga{
  opacity:0;
  transform:translateX(-50%) translateY(-32px) scaleX(.6);
  transition:opacity .8s ease,transform .9s cubic-bezier(.2,.85,.25,1);
}
.evolution-card.evo-v2 .evo-era-1 .evo-pillar.pillar-fin{transition-delay:.18s}
.evolution-card.evo-v2 .evo-era-1 .evo-pillar.pillar-ghost{transition-delay:.4s}
.evolution-card.evo-v2 .evo-era-2 .evo-pillar.pillar-fin{transition-delay:.55s}
.evolution-card.evo-v2 .evo-era-2 .evo-pillar.pillar-out{transition-delay:.7s}
.evolution-card.evo-v2.evo-visible .evo-pillar{transform:scaleY(1)}
.evolution-card.evo-v2.evo-visible .evo-viga{
  opacity:1;
  transform:translateX(-50%) translateY(0) scaleX(1);
  transition-delay:1s;
}

@media (prefers-reduced-motion:reduce){
  .evolution-card.evo-v2 .evo-pillar,
  .evolution-card.evo-v2 .evo-viga,
  .badge-spark{
    animation:none !important;
    transition:none !important;
    transform:none !important;
    opacity:1 !important;
  }
  .evolution-card.evo-v2 .evo-viga{transform:translateX(-50%) !important}
  .evolution-card.evo-v2 .evo-pillar-pair{transform:translateX(-50%) !important}
  .evolution-card.evo-v2 .evo-pillar-names{transform:translateX(-50%) !important}
}

/* ============================================================
   v4.5 — Evolution Card REDESIGN HORIZONTAL SPLIT
   Era 01 | Divider+Badge 2011 | Era 02 (proporção com texto)
   Sobrescreve as classes v4.4 (mesmo seletor .evolution-card.evo-v2)
   ============================================================ */

/* zera padding antigo do card (v4.4 deixava 0 mas vamos garantir) */
.evolution-card.evo-v2{
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:0;
  overflow:hidden;
  box-shadow:0 4px 12px rgba(45,49,66,.06),0 24px 48px rgba(45,49,66,.08);
}
.evolution-card.evo-v2::before{display:none}

/* TOP STRIP */
.evo-top{
  padding:18px 24px 14px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#FAF9FE 0%,#FFFCF1 100%);
}
.evo-top-eyebrow{
  display:block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10.5px;
  font-weight:800;
  color:var(--bx-yellow-d);
  letter-spacing:.22em;
  text-transform:uppercase;
  margin-bottom:5px;
}
.evo-top-brief{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:14px;
  font-style:italic;
  color:var(--ink);
  font-weight:600;
  margin:0;
  line-height:1.4;
}

/* SPLIT BODY */
.evo-split{
  display:grid;
  grid-template-columns:1fr 76px 1fr;
  align-items:stretch;
}

/* SIDE PANELS */
.evo-side{
  padding:20px 16px 16px;
  display:flex;
  flex-direction:column;
}
.evo-side-1{background:linear-gradient(180deg,#fff 0%,#FAF9FE 100%)}
.evo-side-2{background:linear-gradient(180deg,#FFFCF1 0%,#F8F2DD 100%)}

.evo-side-tag{
  display:inline-block;
  align-self:flex-start;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  margin-bottom:8px;
  padding:4px 10px;
  background:rgba(255,255,255,.85);
  border:1px solid rgba(45,49,66,.1);
  border-radius:999px;
  white-space:nowrap;
}
.evo-side-tag.tag-fin{color:var(--finance);border-color:rgba(91,87,168,.25)}
.evo-side-tag.tag-yellow{color:var(--bx-yellow-d);border-color:rgba(244,200,27,.35)}
.evo-side h4{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:17px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.022em;
  line-height:1.2;
  margin:0 0 6px;
}

/* MINI STAGE */
.evo-mini-stage{
  position:relative;
  height:138px;
  margin:8px 0 12px;
}
.evo-mini-floor{
  position:absolute;
  bottom:20px;
  left:6%;right:6%;
  height:1px;
  background:linear-gradient(90deg,transparent 0%,rgba(45,49,66,.18) 20%,rgba(45,49,66,.32) 50%,rgba(45,49,66,.18) 80%,transparent 100%);
  z-index:1;
}
.evo-mini-floor::after{
  content:"";
  position:absolute;
  top:1px;
  left:20%;right:20%;
  height:8px;
  background:radial-gradient(ellipse at center top,rgba(45,49,66,.10) 0%,transparent 70%);
  filter:blur(2px);
}

.evo-mini-pair{
  position:absolute;
  bottom:21px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  align-items:flex-end;
  gap:22px;
  z-index:2;
}
.evo-mini-pillar{
  width:24px;
  height:84px;
  border-radius:5px 5px 0 0;
  transform-origin:bottom center;
}
.evo-mini-pillar.pillar-fin{
  background:linear-gradient(180deg,#8a85d0 0%,#5B57A8 30%,#3D3A7A 100%);
  box-shadow:0 10px 22px rgba(91,87,168,.40),inset -3px 0 0 rgba(0,0,0,.14),inset 2px 0 0 rgba(255,255,255,.18);
}
.evo-mini-pillar.pillar-out{
  background:linear-gradient(180deg,#ffbc73 0%,#F49423 30%,#B86D14 100%);
  box-shadow:0 10px 22px rgba(244,148,35,.40),inset -3px 0 0 rgba(0,0,0,.12),inset 2px 0 0 rgba(255,255,255,.18);
}
.evo-mini-pillar.pillar-ghost{
  background:transparent;
  border:1.5px dashed rgba(244,148,35,.55);
  box-shadow:none;
  border-radius:5px;
}

.evo-mini-viga{
  position:absolute;
  bottom:calc(21px + 84px - 4px);
  left:50%;
  transform:translateX(-50%);
  width:80px;
  height:10px;
  background:linear-gradient(90deg,#D6A914 0%,#F4C81B 30%,#FCDD4D 50%,#F4C81B 70%,#D6A914 100%);
  border-radius:5px;
  box-shadow:0 6px 16px rgba(244,200,27,.55),inset 0 -1px 0 rgba(0,0,0,.10),inset 0 1px 0 rgba(255,255,255,.4);
  z-index:3;
}
.mini-viga-tag{
  position:absolute;
  top:-22px;
  left:50%;
  transform:translateX(-50%);
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9px;
  font-weight:800;
  color:var(--bx-yellow-d);
  letter-spacing:.20em;
  text-transform:uppercase;
  white-space:nowrap;
  padding:3px 8px;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(244,200,27,.35);
  border-radius:999px;
}

.evo-mini-names{
  position:absolute;
  bottom:2px;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:22px;
  z-index:2;
}
.evo-mini-names span{
  width:46px;
  text-align:center;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:8.5px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  line-height:1.3;
}
.evo-mini-names .name-fin{color:var(--finance)}
.evo-mini-names .name-out{color:var(--outsourcing)}
.evo-mini-names .name-ghost{
  color:rgba(244,148,35,.5);
  font-size:13px !important;
  letter-spacing:0 !important;
  font-style:italic;
}

/* SIDE STAT */
.evo-side-stat{
  margin-top:auto;
  display:flex;
  align-items:baseline;
  gap:8px;
  padding-top:10px;
  border-top:1px dashed rgba(45,49,66,.14);
}
.evo-side-stat b{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:20px;
  font-weight:800;
  letter-spacing:-.025em;
  line-height:1;
}
.evo-side-1 .evo-side-stat b{color:var(--finance)}
.evo-side-2 .evo-side-stat b{color:var(--bx-yellow-d)}
.evo-side-stat span{
  font-size:10.5px;
  color:var(--ink-soft);
  font-weight:700;
  letter-spacing:.04em;
}

/* DIVIDER WITH BADGE 2011 */
.evo-divider{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:18px 0;
  background:linear-gradient(180deg,#FAF9FE 0%,#FBF8F2 50%,#FFFCF1 100%);
  border-left:1px solid rgba(45,49,66,.06);
  border-right:1px solid rgba(45,49,66,.06);
  position:relative;
}
.div-line{
  flex:1;
  width:1.5px;
  background:linear-gradient(180deg,transparent 0%,rgba(45,49,66,.15) 50%,rgba(45,49,66,.25) 100%);
}
.div-line:last-of-type{
  background:linear-gradient(180deg,rgba(45,49,66,.25) 0%,rgba(45,49,66,.15) 50%,transparent 100%);
}
.div-badge{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:50px;height:50px;
  border-radius:50%;
  background:radial-gradient(circle at 32% 28%,#FCDD4D 0%,#F4C81B 60%,#D6A914 100%);
  box-shadow:0 6px 18px rgba(244,200,27,.55),inset 0 -2px 0 rgba(0,0,0,.10);
  margin:10px 0;
  flex-shrink:0;
}
.div-badge-year{
  position:relative;
  z-index:2;
  color:var(--ink);
  font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:800;
  font-size:13px;
  letter-spacing:-.02em;
}
.div-badge-spark{
  position:absolute;
  inset:-6px;
  border-radius:50%;
  border:1.5px dashed rgba(244,200,27,.55);
  animation:transit-pulse 3s ease-in-out infinite;
}

/* BOTTOM DECLARATION */
.evo-bottom{
  padding:16px 24px 20px;
  background:linear-gradient(180deg,#FBF8F2 0%,#F5EFDE 100%);
  border-top:1px solid var(--line);
}
.evo-bottom-line{
  display:inline-block;
  width:38px;height:3px;
  background:var(--bx-yellow);
  border-radius:2px;
  margin-bottom:7px;
}
.evo-bottom-tag{
  display:block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10.5px;
  font-weight:800;
  color:var(--bx-yellow-d);
  letter-spacing:.22em;
  text-transform:uppercase;
  margin-bottom:5px;
}
.evo-bottom em{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-style:italic;
  font-size:13.5px;
  color:var(--ink);
  font-weight:700;
}

/* ANIM REVEAL (sobrescreve v4.4 que mirava .evo-pillar/.evo-viga) */
.evolution-card.evo-v2 .evo-mini-pillar{
  transform:scaleY(.05);
  transition:transform 1s cubic-bezier(.2,.85,.25,1);
}
.evolution-card.evo-v2 .evo-mini-viga{
  opacity:0;
  transform:translateX(-50%) translateY(-22px) scaleX(.6);
  transition:opacity .8s ease,transform .9s cubic-bezier(.2,.85,.25,1);
}
.evolution-card.evo-v2 .evo-side-1 .pillar-fin{transition-delay:.18s}
.evolution-card.evo-v2 .evo-side-1 .pillar-ghost{transition-delay:.40s}
.evolution-card.evo-v2 .evo-side-2 .pillar-fin{transition-delay:.55s}
.evolution-card.evo-v2 .evo-side-2 .pillar-out{transition-delay:.70s}
.evolution-card.evo-v2.evo-visible .evo-mini-pillar{transform:scaleY(1)}
.evolution-card.evo-v2.evo-visible .evo-mini-viga{
  opacity:1;
  transform:translateX(-50%) translateY(0) scaleX(1);
  transition-delay:1s;
}

/* MOBILE: empilha panels */
@media (max-width:768px){
  .evo-split{grid-template-columns:1fr}
  .evo-divider{
    flex-direction:row;
    padding:14px 18px;
    border-left:none;
    border-right:none;
    border-top:1px solid rgba(45,49,66,.06);
    border-bottom:1px solid rgba(45,49,66,.06);
  }
  .div-line{width:auto !important;height:1.5px !important;background:linear-gradient(90deg,transparent 0%,rgba(45,49,66,.15) 100%) !important}
  .div-line:last-of-type{background:linear-gradient(90deg,rgba(45,49,66,.15) 0%,transparent 100%) !important}
  .div-badge{margin:0 12px}
}

@media (prefers-reduced-motion:reduce){
  .evolution-card.evo-v2 .evo-mini-pillar,
  .evolution-card.evo-v2 .evo-mini-viga,
  .div-badge-spark{
    animation:none !important;
    transition:none !important;
    transform:none !important;
    opacity:1 !important;
  }
  .evolution-card.evo-v2 .evo-mini-viga{transform:translateX(-50%) !important}
  .evolution-card.evo-v2 .evo-mini-pair{transform:translateX(-50%) !important}
  .evolution-card.evo-v2 .evo-mini-names{transform:translateX(-50%) !important}
}

/* ============================================================
   v4.6 — BX CONSTELLATION (Hero)
   Logo BX Group no centro + 3 orbs (Out/Fin/Cer) + linhas SVG
   tracejadas + ticker rotativo + parallax mouse.
   Substitui visualmente o casa-bx (que ficou só no Cap 02).
   ============================================================ */
.bx-constellation{
  position:relative;
  aspect-ratio:4/5;
  background:linear-gradient(180deg,#FFFCF1 0%,#FBF8F2 45%,#F5EFDE 100%);
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(45,49,66,.08);
  box-shadow:0 12px 32px rgba(45,49,66,.10),0 40px 80px rgba(45,49,66,.10);
}

/* AMBIENT BG */
.bxc-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.bxc-glow{position:absolute;border-radius:50%;filter:blur(60px)}
.bxc-glow-1{top:-100px;right:-100px;width:360px;height:360px;background:radial-gradient(circle,rgba(244,200,27,.50) 0%,transparent 70%)}
.bxc-glow-2{bottom:-80px;left:-80px;width:280px;height:280px;background:radial-gradient(circle,rgba(54,181,99,.30) 0%,transparent 70%)}

/* dot-grid sutil mascarado no centro */
.bxc-grid{
  position:absolute;inset:0;
  background-image:radial-gradient(rgba(45,49,66,.08) 1px,transparent 1px);
  background-size:22px 22px;
  opacity:.55;
  mask-image:radial-gradient(ellipse at center,black 28%,transparent 78%);
  -webkit-mask-image:radial-gradient(ellipse at center,black 28%,transparent 78%);
}

/* LINHAS SVG conectando satélites ao centro */
.bxc-lines{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
  pointer-events:none;
}
.bxc-line{
  stroke-width:.5;
  stroke-dasharray:1.5 1.8;
  fill:none;
  opacity:.55;
}
.bxc-line-out{stroke:#F49423;animation:bxc-line-flow 4.5s linear infinite}
.bxc-line-fin{stroke:#5B57A8;animation:bxc-line-flow 4.5s linear infinite -1.5s}
.bxc-line-cer{stroke:#4A78C2;animation:bxc-line-flow 4.5s linear infinite -3s}

@keyframes bxc-line-flow{
  0%{stroke-dashoffset:0;opacity:.4}
  50%{opacity:.7}
  100%{stroke-dashoffset:-20;opacity:.4}
}

/* CENTRO — BX Group node */
.bxc-center{
  position:absolute;
  top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:120px;height:120px;
  z-index:5;
  pointer-events:none;
  will-change:transform;
}
.bxc-center-inner{
  position:absolute;
  inset:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(244,200,27,.4);
  border-radius:24px;
  box-shadow:0 10px 30px rgba(244,200,27,.25),0 4px 14px rgba(45,49,66,.08);
  padding:24px;
  z-index:2;
}
.bxc-center-inner img{
  width:100%;height:100%;
  object-fit:contain;
}
.bxc-center-pulse{
  position:absolute;
  inset:0;
  border-radius:24px;
  background:radial-gradient(circle,rgba(244,200,27,.55) 0%,transparent 70%);
  animation:bxc-pulse 3.5s ease-in-out infinite;
  z-index:1;
}
.bxc-pulse-2{animation-delay:1.75s}

@keyframes bxc-pulse{
  0%,100%{transform:scale(.95);opacity:.6}
  50%{transform:scale(1.35);opacity:0}
}

/* ORBS satélite */
.bxc-orb{
  position:absolute;
  width:74px;height:74px;
  z-index:3;
  transition:transform .4s cubic-bezier(.2,.85,.25,1);
  will-change:transform;
}
.bxc-orb-inner{
  width:100%;height:100%;
  background:#fff;
  border-radius:20px;
  box-shadow:0 8px 22px rgba(45,49,66,.10),0 2px 6px rgba(45,49,66,.06);
  display:flex;align-items:center;justify-content:center;
  padding:13px;
  position:relative;
  overflow:hidden;
}
.bxc-orb-inner::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
}
.bxc-orb-out .bxc-orb-inner::before{background:var(--outsourcing)}
.bxc-orb-fin .bxc-orb-inner::before{background:var(--finance)}
.bxc-orb-cer .bxc-orb-inner::before{background:var(--certified)}
.bxc-orb-inner img{
  width:100%;height:100%;
  object-fit:contain;
}

/* posições — triângulo ao redor do centro */
.bxc-orb-out{
  top:13%;left:50%;
  margin-left:-37px;
}
.bxc-orb-fin{bottom:24%;left:13%}
.bxc-orb-cer{bottom:24%;right:13%}

/* float gentil */
.bxc-orb-inner{animation:bxc-orb-float 6s ease-in-out infinite}
.bxc-orb-fin .bxc-orb-inner{animation-delay:-2s}
.bxc-orb-cer .bxc-orb-inner{animation-delay:-4s}

@keyframes bxc-orb-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-9px)}
}

/* TICKER KPI rotativo */
.bxc-ticker{
  position:absolute;
  bottom:16px;
  left:50%;
  transform:translateX(-50%);
  z-index:6;
  text-align:center;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(45,49,66,.1);
  border-radius:14px;
  padding:10px 18px 9px;
  box-shadow:0 6px 18px rgba(45,49,66,.10);
  min-width:230px;
}
.bxc-ticker-eyebrow{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:8.5px;
  font-weight:800;
  color:var(--ink-soft);
  letter-spacing:.26em;
  text-transform:uppercase;
  margin-bottom:6px;
}
.bxc-ticker-stage{
  position:relative;
  height:22px;
  overflow:hidden;
}
.bxc-ticker-item{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  opacity:0;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:13px;
  color:var(--ink-soft);
  font-weight:600;
  white-space:nowrap;
  transform:translateY(10px);
  transition:opacity .5s ease,transform .5s cubic-bezier(.2,.85,.25,1);
}
.bxc-ticker-item.active{
  opacity:1;
  transform:translateY(0);
}
.bxc-ticker-item.exit{
  opacity:0;
  transform:translateY(-10px);
}
.bxc-ticker-item b{
  color:var(--ink);
  font-weight:800;
  letter-spacing:-.02em;
  font-size:15px;
}

/* INITIAL REVEAL — fade-in escalonado */
@keyframes bxc-reveal{
  0%{opacity:0;transform:scale(.85)}
  100%{opacity:1;transform:scale(1)}
}
.bxc-center{animation:bxc-reveal .9s cubic-bezier(.2,.85,.25,1) .2s both,bxc-center-keep-pos 0s infinite}
@keyframes bxc-center-keep-pos{0%,100%{transform:translate(-50%,-50%)}}
.bxc-orb-out{animation:bxc-reveal .8s cubic-bezier(.2,.85,.25,1) .55s both}
.bxc-orb-fin{animation:bxc-reveal .8s cubic-bezier(.2,.85,.25,1) .75s both}
.bxc-orb-cer{animation:bxc-reveal .8s cubic-bezier(.2,.85,.25,1) .95s both}
.bxc-ticker{animation:bxc-reveal .8s cubic-bezier(.2,.85,.25,1) 1.4s both}

/* preserve translate(-50%) etc após reveal */
.bx-constellation .bxc-center{animation-name:bxc-reveal-center}
@keyframes bxc-reveal-center{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}
  100%{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
.bx-constellation .bxc-orb-out{animation-name:bxc-reveal-out}
@keyframes bxc-reveal-out{
  0%{opacity:0;transform:translateY(8px)}
  100%{opacity:1;transform:translateY(0)}
}
.bx-constellation .bxc-orb-fin,.bx-constellation .bxc-orb-cer{
  animation-name:bxc-reveal-side;
}
@keyframes bxc-reveal-side{
  0%{opacity:0;transform:translateY(8px)}
  100%{opacity:1;transform:translateY(0)}
}
.bx-constellation .bxc-ticker{animation-name:bxc-reveal-ticker}
@keyframes bxc-reveal-ticker{
  0%{opacity:0;transform:translateX(-50%) translateY(8px)}
  100%{opacity:1;transform:translateX(-50%) translateY(0)}
}

/* prefers-reduced-motion */
@media (prefers-reduced-motion:reduce){
  .bxc-center,.bxc-orb,.bxc-orb-inner,.bxc-ticker,
  .bxc-center-pulse,.bxc-line{
    animation:none !important;
    opacity:1 !important;
  }
  .bxc-center{transform:translate(-50%,-50%) !important}
  .bxc-ticker{transform:translateX(-50%) !important}
}

/* mobile: max-width container */
@media (max-width:1024px){
  .bx-constellation{max-width:380px;margin:0 auto}
}

/* ============================================================
   v5.0 — BI BX FINANCE SHOWCASE
   Seção na /finance: copy esquerda + mockup dashboard animado
   ============================================================ */
.bi-showcase{
  position:relative;
  padding:120px 0 130px;
  background:linear-gradient(180deg,#FBF8F2 0%,#FAF9FE 100%);
  overflow:hidden;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.bi-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.bi-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5}
.bi-glow-fin{top:-160px;left:-100px;width:480px;height:480px;background:radial-gradient(circle,rgba(91,87,168,.40) 0%,transparent 70%)}
.bi-glow-y{bottom:-160px;right:-100px;width:420px;height:420px;background:radial-gradient(circle,rgba(244,200,27,.45) 0%,transparent 70%)}

.bi-showcase .container{position:relative;z-index:2}
.bi-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:start}

/* ============ COPY (esquerda) ============ */
.bi-copy h2{
  font-size:clamp(34px,4.2vw,52px);
  letter-spacing:-.03em;
  margin:18px 0 14px;
  line-height:1.08;
}
.bi-copy h2 em{font-style:italic;color:var(--finance);font-weight:800}
.bi-copy .lead{font-size:19px;color:var(--ink);font-weight:600;line-height:1.5;margin-bottom:14px;max-width:560px}
.bi-body{font-size:15.5px;line-height:1.6;color:var(--ink-soft);max-width:560px;margin-bottom:36px}
.bi-body strong{color:var(--ink);font-weight:800}

/* 6 pilares em grid 2x3 */
.bi-pillars{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin-bottom:36px}
.bi-pillar{position:relative;padding-top:6px}
.bi-pillar-num{
  display:inline-block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:13px;
  font-weight:800;
  color:var(--finance);
  letter-spacing:.16em;
  margin-bottom:6px;
  padding:2px 0;
  border-bottom:2px solid var(--finance);
}
.bi-pillar h3{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:16px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.02em;
  margin:6px 0 6px;
  line-height:1.25;
}
.bi-pillar p{
  font-size:13.5px;
  line-height:1.55;
  color:var(--ink-soft);
  margin:0;
}
.bi-pillar p strong{color:var(--ink);font-weight:800}

.bi-ctas{display:flex;gap:14px;flex-wrap:wrap}

/* ============ MOCKUP (direita) ============ */
.bi-mockup{position:relative;perspective:1400px}
.bi-frame{
  position:relative;
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(45,49,66,.18),0 4px 14px rgba(45,49,66,.10);
  border:1px solid rgba(45,49,66,.1);
  transform:rotateY(-2deg) rotateX(1deg);
  transform-style:preserve-3d;
}

/* Chrome (barra do navegador) */
.bi-chrome{
  display:flex;
  align-items:center;
  gap:8px;
  padding:11px 14px;
  background:linear-gradient(180deg,#F4F4F8 0%,#EAEAF0 100%);
  border-bottom:1px solid rgba(45,49,66,.08);
}
.bi-dot{
  width:11px;height:11px;border-radius:50%;
  background:#FF5F57;display:inline-block;
}
.bi-dot:nth-child(2){background:#FFBD2E}
.bi-dot:nth-child(3){background:#28C840}
.bi-url{
  margin-left:14px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;
  color:var(--muted);
  font-weight:600;
  flex:1;
  padding:4px 12px;
  background:#fff;
  border-radius:6px;
  border:1px solid rgba(45,49,66,.06);
}
.bi-live{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--bx-green-d);
  text-transform:uppercase;
  letter-spacing:.12em;
}
.bi-live-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--bx-green);
  animation:bi-live-pulse 1.6s ease-in-out infinite;
}
@keyframes bi-live-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.4;transform:scale(.7)}
}

/* Dashboard interior */
.bi-dash{
  background:#FAFBFD;
  padding:18px;
  min-height:480px;
  position:relative;
}

/* Header do dashboard */
.bi-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:14px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(45,49,66,.08);
}
.bi-logo-pair{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
}
.bi-logo-bx{
  font-size:18px;
  font-weight:800;
  color:var(--finance);
  letter-spacing:-.04em;
}
.bi-logo-sep{color:var(--muted)}
.bi-logo-client{
  font-size:11px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:.18em;
  text-transform:uppercase;
}
.bi-tabs{display:flex;gap:14px}
.bi-tab{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;
  font-weight:800;
  color:var(--muted);
  letter-spacing:.14em;
  text-transform:uppercase;
  padding:5px 10px;
  border-radius:6px;
}
.bi-tab.active{
  color:var(--finance);
  background:rgba(91,87,168,.10);
  border:1px solid rgba(91,87,168,.25);
}

/* KPI row */
.bi-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.bi-kpi{
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:8px;
  padding:11px 12px;
  display:flex;
  flex-direction:column;
  gap:3px;
  position:relative;
  overflow:hidden;
}
.bi-kpi::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:2px;
  background:var(--finance);
}
.bi-kpi-label{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9px;
  font-weight:800;
  color:var(--muted);
  letter-spacing:.14em;
  text-transform:uppercase;
}
.bi-kpi-val{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:18px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.02em;
  line-height:1;
}
.bi-kpi-trend{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.04em;
}
.bi-kpi-trend.up{color:var(--bx-green-d)}
.bi-kpi-trend.up::before{content:"▲ "}
.bi-kpi-trend.down{color:var(--outsourcing)}
.bi-kpi-trend.down::before{content:"▼ "}

/* Charts row */
.bi-charts{display:grid;grid-template-columns:1.2fr 1fr;gap:8px;margin-bottom:14px}
.bi-chart{
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:8px;
  padding:12px;
}
.bi-chart-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:10px;
}
.bi-chart-title{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.bi-chart-legend{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9px;
  font-weight:700;
  color:var(--muted);
  display:inline-flex;
  align-items:center;
  gap:4px;
}
.bi-chart-legend .dot{width:6px;height:6px;border-radius:50%;display:inline-block}
.bi-chart-legend .dot-fin{background:var(--finance)}

/* Bar chart vertical */
.bi-bars{
  display:flex;
  align-items:flex-end;
  gap:6px;
  height:90px;
  padding-top:8px;
}
.bi-bar{
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  height:100%;
  justify-content:flex-end;
}
.bi-bar i{
  display:block;
  width:100%;
  height:var(--h);
  background:linear-gradient(180deg,#7570C4 0%,#5B57A8 100%);
  border-radius:3px 3px 0 0;
  transform-origin:bottom;
  transform:scaleY(0);
  transition:transform 1.2s cubic-bezier(.2,.85,.25,1);
}
.bi-bar-now i{
  background:linear-gradient(180deg,#FCDD4D 0%,#F4C81B 100%);
  box-shadow:0 -2px 8px rgba(244,200,27,.4);
}
.bi-bar span{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9px;
  font-weight:700;
  color:var(--muted);
}
.bi-showcase.in-view .bi-bar i{transform:scaleY(1)}
.bi-showcase.in-view .bi-bar:nth-child(1) i{transition-delay:.05s}
.bi-showcase.in-view .bi-bar:nth-child(2) i{transition-delay:.12s}
.bi-showcase.in-view .bi-bar:nth-child(3) i{transition-delay:.19s}
.bi-showcase.in-view .bi-bar:nth-child(4) i{transition-delay:.26s}
.bi-showcase.in-view .bi-bar:nth-child(5) i{transition-delay:.33s}
.bi-showcase.in-view .bi-bar:nth-child(6) i{transition-delay:.40s}
.bi-showcase.in-view .bi-bar:nth-child(7) i{transition-delay:.47s}

/* Horizontal bars */
.bi-hbars{display:flex;flex-direction:column;gap:7px}
.bi-hbar{
  display:grid;
  grid-template-columns:55px 1fr 36px;
  gap:8px;
  align-items:center;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  color:var(--ink);
  font-weight:700;
}
.bi-hbar i{
  display:block;
  height:8px;
  width:0;
  background:linear-gradient(90deg,#7570C4 0%,#5B57A8 100%);
  border-radius:4px;
  transition:width 1.2s cubic-bezier(.2,.85,.25,1);
  transition-delay:.4s;
}
.bi-hbar b{font-size:10px;color:var(--finance);font-weight:800;text-align:right}
.bi-showcase.in-view .bi-hbar i{width:var(--w)}
.bi-showcase.in-view .bi-hbar:nth-child(2) i{transition-delay:.5s}
.bi-showcase.in-view .bi-hbar:nth-child(3) i{transition-delay:.6s}
.bi-showcase.in-view .bi-hbar:nth-child(4) i{transition-delay:.7s}
.bi-showcase.in-view .bi-hbar:nth-child(5) i{transition-delay:.8s}

/* Table */
.bi-table{
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:8px;
  overflow:hidden;
}
.bi-table-head,.bi-table-row{
  display:grid;
  grid-template-columns:1.5fr 0.7fr 0.5fr 0.3fr;
  gap:8px;
  padding:8px 12px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10.5px;
  align-items:center;
}
.bi-table-head{
  background:#F4F4F8;
  font-weight:800;
  color:var(--muted);
  letter-spacing:.10em;
  text-transform:uppercase;
  font-size:9px;
  border-bottom:1px solid rgba(45,49,66,.08);
}
.bi-table-row{
  color:var(--ink);
  font-weight:600;
  border-bottom:1px solid rgba(45,49,66,.04);
  opacity:0;
  transform:translateX(-8px);
  transition:opacity .5s ease,transform .5s cubic-bezier(.2,.85,.25,1);
}
.bi-table-row:last-child{border-bottom:none}
.bi-table-row .num{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.bi-table-row .num:nth-child(3){color:var(--ink-soft)}
.bi-status{font-size:14px;text-align:center;line-height:1}
.bi-status.ok{color:var(--bx-green)}
.bi-status.warn{color:var(--outsourcing)}
.bi-showcase.in-view .bi-table-row{opacity:1;transform:translateX(0)}
.bi-showcase.in-view .bi-table-row:nth-of-type(1){transition-delay:.9s}
.bi-showcase.in-view .bi-table-row:nth-of-type(2){transition-delay:1.0s}
.bi-showcase.in-view .bi-table-row:nth-of-type(3){transition-delay:1.1s}
.bi-showcase.in-view .bi-table-row:nth-of-type(4){transition-delay:1.2s}

/* Cursor animado */
.bi-cursor{
  position:absolute;
  width:14px;
  height:14px;
  background:var(--finance);
  border:2px solid #fff;
  border-radius:50%;
  box-shadow:0 4px 12px rgba(91,87,168,.5);
  pointer-events:none;
  z-index:10;
  opacity:0;
  transition:opacity .3s ease;
}
.bi-showcase.in-view .bi-cursor{
  opacity:1;
  animation:bi-cursor-tour 8s ease-in-out 1.5s infinite;
}
@keyframes bi-cursor-tour{
  0%{top:80px;left:50px}
  20%{top:80px;left:200px}
  35%{top:200px;left:200px}
  50%{top:200px;left:340px}
  65%{top:330px;left:280px}
  80%{top:330px;left:120px}
  100%{top:80px;left:50px}
}

/* Footnote */
.bi-footnote{
  padding:10px 16px;
  background:linear-gradient(180deg,#FAFBFD 0%,#F4F4F8 100%);
  border-top:1px solid rgba(45,49,66,.08);
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10.5px;
  color:var(--muted);
  font-weight:600;
}
.bi-footnote b{color:var(--finance);font-weight:800}
.bi-pulse{
  width:8px;height:8px;border-radius:50%;
  background:var(--bx-green);
  animation:bi-live-pulse 1.6s ease-in-out infinite;
}

/* Float badges */
.bi-float{
  position:absolute;
  background:#fff;
  border:1px solid rgba(45,49,66,.1);
  border-radius:12px;
  padding:11px 14px;
  display:flex;
  align-items:center;
  gap:10px;
  box-shadow:0 12px 28px rgba(45,49,66,.15);
  z-index:10;
}
.bi-float-ic{
  width:32px;height:32px;
  border-radius:10px;
  display:grid;place-items:center;
  color:#fff;font-size:14px;font-weight:800;
}
.bi-float-1{top:-22px;left:-22px}
.bi-float-1 .bi-float-ic{background:linear-gradient(135deg,var(--bx-yellow),var(--bx-yellow-d));color:var(--ink)}
.bi-float-2{bottom:-22px;right:-22px}
.bi-float-2 .bi-float-ic{background:linear-gradient(135deg,var(--finance),var(--finance-2));color:#fff}
.bi-float b{
  display:block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:13.5px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.01em;
  line-height:1.2;
}
.bi-float small{
  font-size:11px;
  color:var(--ink-soft);
  font-weight:600;
}
.bi-float-1{animation:bi-float 5s ease-in-out infinite}
.bi-float-2{animation:bi-float 5s ease-in-out -2.5s infinite}
@keyframes bi-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}

/* INITIAL reveal do mockup */
.bi-frame{
  opacity:0;
  transform:rotateY(-2deg) rotateX(1deg) translateY(30px);
  transition:opacity .8s ease,transform .9s cubic-bezier(.2,.85,.25,1);
}
.bi-showcase.in-view .bi-frame{
  opacity:1;
  transform:rotateY(-2deg) rotateX(1deg) translateY(0);
}

/* prefers-reduced-motion */
@media (prefers-reduced-motion:reduce){
  .bi-bar i,.bi-hbar i,.bi-table-row,.bi-frame,.bi-cursor,.bi-float,.bi-pulse,.bi-live-dot{
    animation:none !important;
    transition:none !important;
    transform:none !important;
    opacity:1 !important;
    width:auto !important;
  }
  .bi-bar i{transform:scaleY(1) !important}
  .bi-hbar i{width:var(--w) !important}
  .bi-frame{transform:rotateY(-2deg) rotateX(1deg) !important}
}

/* RESPONSIVE */
@media (max-width:1024px){
  .bi-grid{grid-template-columns:1fr;gap:48px}
  .bi-pillars{grid-template-columns:1fr 1fr}
  .bi-mockup{max-width:520px;margin:0 auto}
  .bi-frame{transform:none !important}
  .bi-showcase.in-view .bi-frame{transform:translateY(0) !important}
}
@media (max-width:680px){
  .bi-showcase{padding:80px 0}
  .bi-pillars{grid-template-columns:1fr;gap:20px}
  .bi-kpis{grid-template-columns:1fr 1fr;gap:6px}
  .bi-charts{grid-template-columns:1fr}
  .bi-float-1{top:-12px;left:-12px;scale:.85}
  .bi-float-2{bottom:-12px;right:-12px;scale:.85}
}

/* ============================================================
   v5.2 — Fix: restaurar .pillars/.pillar em /finance, /outsourcing, /certified
   A v4.4 (Evolution Card) poluiu o namespace com .pillars/.pillar
   redefinidos como pequenos retângulos arquitetônicos.
   Aqui re-escopo as classes originais via .ecosystem-wrap (que é
   o contexto em que aparecem nas 3 subpáginas).
   ============================================================ */
.ecosystem-wrap .pillars{
  display:flex !important;
  flex-direction:column !important;
  gap:20px;
  margin-top:36px;
  align-items:stretch !important;
}
.ecosystem-wrap .pillar{
  display:flex !important;
  flex-direction:row;
  gap:20px;
  align-items:flex-start !important;
  padding:24px;
  background:#fff !important;
  border:1px solid var(--line);
  border-radius:18px;
  width:auto !important;
  height:auto !important;
  transition:transform .2s,border-color .2s;
}
.ecosystem-wrap .pillar:hover{
  transform:translateX(6px);
  border-color:var(--bx-yellow);
}
.ecosystem-wrap .pillar .ic{
  flex-shrink:0;
  width:52px;
  height:52px;
  border-radius:14px;
  display:grid;
  place-items:center;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:800;
  font-size:18px;
  color:#fff;
}
.ecosystem-wrap .pillar h3{
  margin:0 0 6px;
  font-size:18px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.015em;
}
.ecosystem-wrap .pillar p{
  margin:0;
  font-size:14.5px;
  color:var(--ink-soft);
  line-height:1.55;
}

/* ============================================================
   v5.3 — BPO COCKPIT (Hero /outsourcing)
   Espelho do BI Finance, paleta laranja Outsourcing.
   Calendário fiscal vivo + KPIs + activity feed.
   ============================================================ */
.bpo-cockpit{
  position:relative;
  aspect-ratio:4/5;
  max-width:520px;
  margin:0 auto;
}
.bpo-bg{position:absolute;inset:-30px;pointer-events:none;z-index:0}
.bpo-glow{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55}
.bpo-glow-out{top:-80px;right:-80px;width:340px;height:340px;background:radial-gradient(circle,rgba(244,148,35,.45) 0%,transparent 70%)}
.bpo-glow-y{bottom:-80px;left:-80px;width:280px;height:280px;background:radial-gradient(circle,rgba(244,200,27,.40) 0%,transparent 70%)}

.bpo-frame{
  position:relative;
  z-index:1;
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(45,49,66,.18),0 4px 14px rgba(45,49,66,.10);
  border:1px solid rgba(45,49,66,.1);
}

/* Browser chrome */
.bpo-chrome{
  display:flex;
  align-items:center;
  gap:8px;
  padding:11px 14px;
  background:linear-gradient(180deg,#F4F4F8 0%,#EAEAF0 100%);
  border-bottom:1px solid rgba(45,49,66,.08);
}
.bpo-dot{width:11px;height:11px;border-radius:50%;background:#FF5F57;display:inline-block}
.bpo-dot:nth-child(2){background:#FFBD2E}
.bpo-dot:nth-child(3){background:#28C840}
.bpo-url{
  margin-left:14px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;
  color:var(--muted);
  font-weight:600;
  flex:1;
  padding:4px 12px;
  background:#fff;
  border-radius:6px;
  border:1px solid rgba(45,49,66,.06);
}
.bpo-live{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--bx-green-d);
  text-transform:uppercase;
  letter-spacing:.12em;
}
.bpo-live-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--bx-green);
  animation:bpo-live-pulse 1.6s ease-in-out infinite;
}
@keyframes bpo-live-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.4;transform:scale(.7)}
}

/* Dashboard interno */
.bpo-dash{
  background:#FAFBFD;
  padding:16px;
}

/* Header interno */
.bpo-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(45,49,66,.08);
  gap:8px;
  flex-wrap:wrap;
}
.bpo-logo-pair{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
}
.bpo-logo-bx{
  font-size:18px;
  font-weight:800;
  color:var(--outsourcing);
  letter-spacing:-.04em;
}
.bpo-logo-sep{color:var(--muted)}
.bpo-logo-client{
  font-size:10.5px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.bpo-tabs{display:flex;gap:4px;flex-wrap:wrap}
.bpo-tab{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--muted);
  letter-spacing:.10em;
  text-transform:uppercase;
  padding:4px 9px;
  border-radius:5px;
}
.bpo-tab.active{
  color:var(--outsourcing);
  background:rgba(244,148,35,.12);
  border:1px solid rgba(244,148,35,.30);
}

/* KPIs */
.bpo-kpis{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
  margin-bottom:14px;
}
.bpo-kpi{
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:8px;
  padding:9px 10px;
  display:flex;
  flex-direction:column;
  gap:2px;
  position:relative;
  overflow:hidden;
}
.bpo-kpi::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:2px;
  background:var(--outsourcing);
}
.bpo-kpi-label{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:8.5px;
  font-weight:800;
  color:var(--muted);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.bpo-kpi-val{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:17px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:-.025em;
  line-height:1;
}
.bpo-kpi-trend{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:8.5px;
  font-weight:800;
  letter-spacing:.04em;
  color:var(--ink-soft);
}
.bpo-kpi-trend.up{color:var(--bx-green-d)}
.bpo-kpi-trend.up::before{content:"▲ "}

/* Calendário fiscal */
.bpo-cal{
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:8px;
  padding:11px;
  margin-bottom:12px;
}
.bpo-cal-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:10px;
  flex-wrap:wrap;
  gap:6px;
}
.bpo-cal-title{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.bpo-cal-key{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:8.5px;
  font-weight:700;
  color:var(--muted);
}
.bpo-cal-key i{
  display:inline-block;
  width:8px;height:8px;
  border-radius:50%;
  margin-right:3px;
  vertical-align:middle;
}
.bpo-cal-key i + i{margin-left:8px}
.bpo-cal-key .key-done{background:var(--bx-green)}
.bpo-cal-key .key-today{background:var(--bx-yellow)}
.bpo-cal-key .key-next{background:var(--outsourcing-2)}

.bpo-cal-weekdays{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:3px;
  margin-bottom:5px;
}
.bpo-cal-weekdays span{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:8.5px;
  font-weight:800;
  color:var(--muted);
  text-align:center;
  letter-spacing:.04em;
}

.bpo-cal-grid{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:3px;
}
.bpo-cell{
  position:relative;
  aspect-ratio:1;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:700;
  border-radius:5px;
  background:#F4F4F8;
  color:var(--ink-soft);
}
.bpo-cell.empty{background:transparent}
.bpo-cell.done{
  background:rgba(54,181,99,.12);
  color:var(--bx-green-d);
}
.bpo-cell.done::after{
  content:"";
  position:absolute;
  bottom:2px;
  width:4px;height:4px;
  border-radius:50%;
  background:var(--bx-green);
}
.bpo-cell.today{
  background:linear-gradient(135deg,#FCDD4D 0%,#F4C81B 100%);
  color:var(--ink);
  border:1.5px solid var(--bx-yellow-d);
  font-weight:800;
  box-shadow:0 4px 10px rgba(244,200,27,.45);
  z-index:1;
  animation:bpo-today-pulse 2.5s ease-in-out infinite;
}
@keyframes bpo-today-pulse{
  0%,100%{box-shadow:0 4px 10px rgba(244,200,27,.45)}
  50%{box-shadow:0 4px 18px rgba(244,200,27,.75)}
}
.bpo-cell.next{
  background:rgba(244,148,35,.10);
  color:var(--outsourcing-d);
  border:1px dashed rgba(244,148,35,.35);
}
.bpo-cell .tag{
  position:absolute;
  top:-3px;right:-3px;
  width:13px;height:13px;
  border-radius:50%;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:7px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-style:normal;
  box-shadow:0 2px 4px rgba(45,49,66,.2);
}
.tag-fiscal{background:#5B57A8}
.tag-folha{background:#36B563}
.tag-sped{background:#F49423}
.tag-icms{background:#E0B616;color:var(--ink)}
.tag-dctf{background:#B86D14}

/* Activity feed */
.bpo-activity{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.bpo-activity-row{
  display:grid;
  grid-template-columns:18px 1fr auto;
  gap:8px;
  align-items:center;
  padding:7px 10px;
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:6px;
  font-family:'Plus Jakarta Sans',sans-serif;
}
.bpo-activity-row.done{border-left:3px solid var(--bx-green)}
.bpo-activity-row.progress{border-left:3px solid var(--outsourcing);background:rgba(244,148,35,.04)}
.bpo-act-ic{
  font-size:11px;
  font-weight:800;
  text-align:center;
}
.bpo-activity-row.done .bpo-act-ic{color:var(--bx-green-d)}
.bpo-activity-row.progress .bpo-act-ic{color:var(--outsourcing);animation:bpo-prog-pulse 1.4s ease-in-out infinite}
@keyframes bpo-prog-pulse{
  0%,100%{opacity:1}
  50%{opacity:.4}
}
.bpo-act-text{
  font-size:10.5px;
  font-weight:700;
  color:var(--ink);
}
.bpo-act-time{
  font-size:9.5px;
  font-weight:700;
  color:var(--muted);
  letter-spacing:.04em;
}

/* Footnote */
.bpo-footnote{
  padding:9px 14px;
  background:linear-gradient(180deg,#FAFBFD 0%,#F4F4F8 100%);
  border-top:1px solid rgba(45,49,66,.08);
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  color:var(--muted);
  font-weight:600;
}
.bpo-footnote b{color:var(--outsourcing);font-weight:800}
.bpo-pulse{
  width:8px;height:8px;border-radius:50%;
  background:var(--bx-green);
  animation:bpo-live-pulse 1.6s ease-in-out infinite;
}

/* Animação de reveal */
.bpo-frame{
  opacity:0;
  transform:translateY(20px) rotateY(2deg) rotateX(1deg);
  transition:opacity .8s ease,transform .9s cubic-bezier(.2,.85,.25,1);
}
.bpo-cockpit.in-view .bpo-frame{
  opacity:1;
  transform:translateY(0) rotateY(2deg) rotateX(1deg);
}

/* Calendar cells fade-in stagger */
.bpo-cell{
  opacity:0;
  transform:scale(.6);
  transition:opacity .4s ease,transform .4s cubic-bezier(.2,.85,.25,1);
}
.bpo-cockpit.in-view .bpo-cell{
  opacity:1;
  transform:scale(1);
}
.bpo-cockpit.in-view .bpo-cell.empty{opacity:0}
/* stagger por ordem com nth-child */
.bpo-cockpit.in-view .bpo-cell:nth-child(n){transition-delay:calc(.4s + var(--idx,0) * .02s)}

/* Activity rows fade-in */
.bpo-activity-row{
  opacity:0;
  transform:translateX(-8px);
  transition:opacity .5s ease,transform .5s cubic-bezier(.2,.85,.25,1);
}
.bpo-cockpit.in-view .bpo-activity-row{opacity:1;transform:translateX(0)}
.bpo-cockpit.in-view .bpo-activity-row:nth-of-type(1){transition-delay:1.2s}
.bpo-cockpit.in-view .bpo-activity-row:nth-of-type(2){transition-delay:1.35s}
.bpo-cockpit.in-view .bpo-activity-row:nth-of-type(3){transition-delay:1.5s}

@media (prefers-reduced-motion:reduce){
  .bpo-frame,.bpo-cell,.bpo-activity-row,
  .bpo-live-dot,.bpo-pulse,.bpo-cell.today,
  .bpo-activity-row.progress .bpo-act-ic{
    animation:none !important;
    transition:none !important;
    transform:none !important;
    opacity:1 !important;
  }
  .bpo-frame{transform:rotateY(2deg) rotateX(1deg) !important}
}

/* Sobrescrever .page-hero-shape no /outsourcing pra esconder */
.page-hero.bg-out .page-hero-shape.s-out{display:none}

/* ============================================================
   v5.5 — CERTIFICATE VAULT (Hero /certified)
   Cartão digital A3 estilizado + chip + hologram + workflow
   Paleta azul Certified, DNA ICP-Brasil
   ============================================================ */
.cer-vault{
  position:relative;
  aspect-ratio:4/5;
  max-width:520px;
  margin:0 auto;
}
.cer-bg{position:absolute;inset:-30px;pointer-events:none;z-index:0}
.cer-glow{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55}
.cer-glow-cer{top:-80px;right:-80px;width:340px;height:340px;background:radial-gradient(circle,rgba(74,120,194,.50) 0%,transparent 70%)}
.cer-glow-y{bottom:-80px;left:-80px;width:260px;height:260px;background:radial-gradient(circle,rgba(244,200,27,.30) 0%,transparent 70%)}

.cer-frame{
  position:relative;
  z-index:1;
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(45,49,66,.18),0 4px 14px rgba(45,49,66,.10);
  border:1px solid rgba(45,49,66,.1);
}

/* Chrome */
.cer-chrome{
  display:flex;
  align-items:center;
  gap:8px;
  padding:11px 14px;
  background:linear-gradient(180deg,#F4F4F8 0%,#EAEAF0 100%);
  border-bottom:1px solid rgba(45,49,66,.08);
}
.cer-dot{width:11px;height:11px;border-radius:50%;background:#FF5F57;display:inline-block}
.cer-dot:nth-child(2){background:#FFBD2E}
.cer-dot:nth-child(3){background:#28C840}
.cer-url{
  margin-left:14px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;
  color:var(--muted);
  font-weight:600;
  flex:1;
  padding:4px 12px;
  background:#fff;
  border-radius:6px;
  border:1px solid rgba(45,49,66,.06);
}
.cer-live{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--bx-green-d);
  text-transform:uppercase;
  letter-spacing:.12em;
}
.cer-live-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--bx-green);
  animation:cer-live-pulse 1.6s ease-in-out infinite;
}
@keyframes cer-live-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.4;transform:scale(.7)}
}

.cer-dash{
  background:linear-gradient(180deg,#F8FAFD 0%,#FAFBFD 100%);
  padding:18px;
}

/* Header */
.cer-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:14px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(45,49,66,.08);
  gap:8px;
  flex-wrap:wrap;
}
.cer-logo-pair{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
}
.cer-logo-bx{
  font-size:18px;
  font-weight:800;
  color:var(--certified);
  letter-spacing:-.04em;
}
.cer-logo-sep{color:var(--muted)}
.cer-logo-client{
  font-size:10.5px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.cer-tabs{display:flex;gap:5px;flex-wrap:wrap}
.cer-tab{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--muted);
  letter-spacing:.10em;
  text-transform:uppercase;
  padding:4px 9px;
  border-radius:5px;
}
.cer-tab.active{
  color:var(--certified);
  background:rgba(74,120,194,.12);
  border:1px solid rgba(74,120,194,.30);
}

/* CARD DIGITAL — peça central */
.cer-card{
  position:relative;
  background:linear-gradient(135deg,#5689CE 0%,#4A78C2 30%,#33588C 100%);
  border-radius:14px;
  padding:18px 18px 16px;
  margin-bottom:14px;
  overflow:hidden;
  color:#fff;
  box-shadow:0 14px 30px rgba(74,120,194,.40),inset 0 1px 0 rgba(255,255,255,.18);
  aspect-ratio:1.6/1;
  display:flex;
  flex-direction:column;
}
.cer-card-pattern{
  position:absolute;
  inset:0;
  background-image:
    radial-gradient(circle at 20% 30%,rgba(255,255,255,.10) 0%,transparent 35%),
    radial-gradient(circle at 80% 70%,rgba(255,255,255,.08) 0%,transparent 35%);
  pointer-events:none;
}
.cer-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  position:relative;
  z-index:2;
}
.cer-card-tag{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9.5px;
  font-weight:800;
  color:#fff;
  letter-spacing:.18em;
  text-transform:uppercase;
  opacity:.92;
}
.cer-card-seal{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9.5px;
  font-weight:800;
  color:#fff;
  letter-spacing:.10em;
  text-transform:uppercase;
  padding:3px 9px 3px 5px;
  background:rgba(255,255,255,.20);
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
}
.cer-card-seal svg{width:13px;height:13px;color:var(--bx-yellow)}

.cer-card-mid{
  display:flex;
  align-items:flex-start;
  gap:14px;
  margin-top:14px;
  position:relative;
  z-index:2;
  flex:1;
}

/* Chip dourado */
.cer-chip{
  width:46px;
  height:36px;
  background:linear-gradient(135deg,#E6C247 0%,#D6A914 50%,#9E7C0E 100%);
  border-radius:5px;
  padding:4px 5px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 2px 4px rgba(0,0,0,.2);
  flex-shrink:0;
  position:relative;
}
.cer-chip::before{
  content:"";
  position:absolute;
  inset:6px 4px;
  border:1px solid rgba(0,0,0,.18);
  border-radius:2px;
}
.cer-chip .chip-line{
  display:block;
  height:1px;
  background:rgba(0,0,0,.20);
  position:relative;
  z-index:1;
}

/* Holder info */
.cer-card-info{
  display:flex;
  flex-direction:column;
  gap:2px;
  flex:1;
  min-width:0;
}
.cer-card-name{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:14px;
  font-weight:800;
  color:#fff;
  letter-spacing:.02em;
  text-transform:uppercase;
  line-height:1.2;
}
.cer-card-id{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10.5px;
  color:rgba(255,255,255,.82);
  font-weight:600;
  letter-spacing:.06em;
  font-variant-numeric:tabular-nums;
}
.cer-card-validity{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9.5px;
  color:rgba(255,255,255,.75);
  font-weight:600;
  margin-top:4px;
  letter-spacing:.04em;
}
.cer-card-validity b{color:#fff;font-weight:800}

/* Hologram band */
.cer-hologram{
  position:absolute;
  right:14px;
  bottom:42px;
  width:34px;
  height:34px;
  border-radius:50%;
  background:conic-gradient(
    from 0deg,
    rgba(255,180,180,.7),
    rgba(180,255,180,.7),
    rgba(180,180,255,.7),
    rgba(255,255,180,.7),
    rgba(255,180,255,.7),
    rgba(255,180,180,.7)
  );
  opacity:.75;
  filter:blur(.3px);
  box-shadow:0 0 10px rgba(255,255,255,.4),inset 0 0 6px rgba(255,255,255,.3);
  animation:cer-holo-spin 4s linear infinite;
}
@keyframes cer-holo-spin{
  to{transform:rotate(360deg)}
}

/* Status ATIVO */
.cer-card-status{
  position:absolute;
  bottom:14px;
  left:18px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:#fff;
  letter-spacing:.16em;
  text-transform:uppercase;
  padding:4px 10px;
  background:rgba(40,200,90,.30);
  border:1px solid rgba(40,200,90,.65);
  border-radius:999px;
  z-index:3;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.cer-status-dot{
  width:6px;height:6px;border-radius:50%;
  background:#28C840;
  box-shadow:0 0 6px #28C840;
  animation:cer-status-pulse 1.5s ease-in-out infinite;
}
@keyframes cer-status-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.5;transform:scale(.7)}
}

/* Workflow steps */
.cer-workflow{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:5px;
  margin-bottom:12px;
}
.cer-step{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:7px 6px;
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:6px;
  border-left:3px solid var(--bx-green);
  font-family:'Plus Jakarta Sans',sans-serif;
}
.cer-step-ic{
  font-size:11px;
  font-weight:800;
  color:var(--bx-green-d);
  flex-shrink:0;
}
.cer-step-text{
  font-size:10px;
  font-weight:700;
  color:var(--ink);
  letter-spacing:.04em;
  white-space:nowrap;
}

/* KPIs */
.cer-kpis{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:5px;
}
.cer-kpi{
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:7px;
  padding:9px 6px;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.cer-kpi::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:2px;
  background:var(--certified);
}
.cer-kpi-val{
  display:block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:15px;
  font-weight:800;
  color:var(--certified);
  letter-spacing:-.02em;
  line-height:1;
  margin-bottom:3px;
}
.cer-kpi-label{
  display:block;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:8.5px;
  font-weight:700;
  color:var(--ink-soft);
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1.2;
}

/* Footnote */
.cer-footnote{
  padding:9px 16px;
  background:linear-gradient(180deg,#FAFBFD 0%,#F4F4F8 100%);
  border-top:1px solid rgba(45,49,66,.08);
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  color:var(--muted);
  font-weight:600;
}
.cer-pulse{
  width:8px;height:8px;border-radius:50%;
  background:var(--bx-green);
  animation:cer-live-pulse 1.6s ease-in-out infinite;
}

/* Reveal */
.cer-frame{
  opacity:0;
  transform:translateY(20px) rotateY(-2deg) rotateX(1deg);
  transition:opacity .8s ease,transform .9s cubic-bezier(.2,.85,.25,1);
}
.cer-vault.in-view .cer-frame{
  opacity:1;
  transform:translateY(0) rotateY(-2deg) rotateX(1deg);
}
.cer-card{
  opacity:0;
  transform:scale(.92);
  transition:opacity .7s ease .3s,transform .8s cubic-bezier(.2,.85,.25,1) .3s;
}
.cer-vault.in-view .cer-card{
  opacity:1;
  transform:scale(1);
}
.cer-step{
  opacity:0;
  transform:translateY(8px);
  transition:opacity .5s ease,transform .5s cubic-bezier(.2,.85,.25,1);
}
.cer-vault.in-view .cer-step{opacity:1;transform:translateY(0)}
.cer-vault.in-view .cer-step:nth-child(1){transition-delay:.9s}
.cer-vault.in-view .cer-step:nth-child(2){transition-delay:1.0s}
.cer-vault.in-view .cer-step:nth-child(3){transition-delay:1.1s}
.cer-vault.in-view .cer-step:nth-child(4){transition-delay:1.2s}

@media (prefers-reduced-motion:reduce){
  .cer-frame,.cer-card,.cer-step,.cer-hologram,
  .cer-live-dot,.cer-pulse,.cer-status-dot{
    animation:none !important;
    transition:none !important;
    transform:none !important;
    opacity:1 !important;
  }
  .cer-frame{transform:rotateY(-2deg) rotateX(1deg) !important}
}

/* esconder shape antigo no /certified */
.page-hero.bg-cer .page-hero-shape.s-cer{display:none}

/* ============================================================
   v5.4 — DEAL ROOM (Hero /finance)
   Trajetória antes/depois + pipeline bancário + KPIs de mandato
   Paleta roxo Finance · SVG dual-line chart
   ============================================================ */
.bxf-dealroom{
  position:relative;
  aspect-ratio:4/5;
  max-width:520px;
  margin:0 auto;
}
.bxf-bg{position:absolute;inset:-30px;pointer-events:none;z-index:0}
.bxf-glow{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55}
.bxf-glow-fin{top:-80px;right:-80px;width:340px;height:340px;background:radial-gradient(circle,rgba(91,87,168,.50) 0%,transparent 70%)}
.bxf-glow-y{bottom:-80px;left:-80px;width:280px;height:280px;background:radial-gradient(circle,rgba(244,200,27,.40) 0%,transparent 70%)}

.bxf-frame{
  position:relative;
  z-index:1;
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(45,49,66,.18),0 4px 14px rgba(45,49,66,.10);
  border:1px solid rgba(45,49,66,.1);
}

/* Chrome */
.bxf-chrome{
  display:flex;
  align-items:center;
  gap:8px;
  padding:11px 14px;
  background:linear-gradient(180deg,#F4F4F8 0%,#EAEAF0 100%);
  border-bottom:1px solid rgba(45,49,66,.08);
}
.bxf-dot{width:11px;height:11px;border-radius:50%;background:#FF5F57;display:inline-block}
.bxf-dot:nth-child(2){background:#FFBD2E}
.bxf-dot:nth-child(3){background:#28C840}
.bxf-url{
  margin-left:14px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11px;
  color:var(--muted);
  font-weight:600;
  flex:1;
  padding:4px 12px;
  background:#fff;
  border-radius:6px;
  border:1px solid rgba(45,49,66,.06);
}
.bxf-live{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--bx-green-d);
  text-transform:uppercase;
  letter-spacing:.12em;
}
.bxf-live-dot{
  width:7px;height:7px;border-radius:50%;
  background:var(--bx-green);
  animation:bxf-live-pulse 1.6s ease-in-out infinite;
}
@keyframes bxf-live-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.4;transform:scale(.7)}
}

.bxf-dash{
  background:#FAFBFD;
  padding:16px;
}

/* Header */
.bxf-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(45,49,66,.08);
  gap:8px;
  flex-wrap:wrap;
}
.bxf-logo-pair{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
}
.bxf-logo-bx{
  font-size:18px;
  font-weight:800;
  color:var(--finance);
  letter-spacing:-.04em;
}
.bxf-logo-sep{color:var(--muted)}
.bxf-logo-client{
  font-size:10.5px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.bxf-tabs{display:flex;gap:5px}
.bxf-tab{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  font-weight:800;
  color:var(--muted);
  letter-spacing:.10em;
  text-transform:uppercase;
  padding:4px 9px;
  border-radius:5px;
}
.bxf-tab.active{
  color:var(--finance);
  background:rgba(91,87,168,.12);
  border:1px solid rgba(91,87,168,.30);
}

/* Chart title */
.bxf-chart-title{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin-bottom:10px;
}
.bxf-chart-title > span:first-child{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:11.5px;
  font-weight:800;
  color:var(--ink);
  letter-spacing:.04em;
}
.bxf-chart-sub{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9.5px;
  font-weight:700;
  color:var(--muted);
  letter-spacing:.06em;
  text-transform:lowercase;
}

/* Chart */
.bxf-chart-wrap{
  position:relative;
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:8px;
  padding:14px 12px 18px;
  margin-bottom:12px;
  overflow:hidden;
}
.bxf-chart{
  width:100%;
  height:140px;
  display:block;
}
.bxf-line{
  transition:stroke-dashoffset 2s cubic-bezier(.2,.85,.25,1);
}
.bxf-line-antes{transition-delay:.4s;opacity:.85}
.bxf-line-depois{transition-delay:.8s}
.bxf-dealroom.in-view .bxf-line{stroke-dashoffset:0 !important}

.bxf-point{
  opacity:0;
  transition:opacity .4s ease;
}
.bxf-dealroom.in-view .bxf-point-origin{opacity:1;transition-delay:.5s}
.bxf-dealroom.in-view .bxf-point-antes{opacity:1;transition-delay:2.2s}
.bxf-dealroom.in-view .bxf-point-depois{opacity:1;transition-delay:2.6s}

.bxf-area{transition:opacity 1.5s ease 1.2s}
.bxf-dealroom.in-view .bxf-area{opacity:1}

.bxf-label{
  position:absolute;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.04em;
  padding:3px 8px;
  border-radius:6px;
  white-space:nowrap;
  opacity:0;
  transition:opacity .5s ease;
}
.bxf-dealroom.in-view .bxf-label{opacity:1;transition-delay:2.6s}
.bxf-label-depois{
  top:14px;right:14px;
  background:rgba(91,87,168,.12);
  color:var(--finance);
  border:1px solid rgba(91,87,168,.30);
}
.bxf-label-antes{
  bottom:22px;right:14px;
  background:rgba(215,95,88,.10);
  color:#B83228;
  border:1px solid rgba(215,95,88,.30);
}

/* KPIs */
.bxf-kpis{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
  margin-bottom:12px;
}
.bxf-kpi{
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:8px;
  padding:9px 10px;
  display:flex;
  flex-direction:column;
  gap:3px;
  position:relative;
  overflow:hidden;
}
.bxf-kpi::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:2px;
  background:var(--finance);
}
.bxf-kpi-label{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:8.5px;
  font-weight:800;
  color:var(--muted);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.bxf-kpi-val{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:16px;
  font-weight:800;
  color:var(--finance);
  letter-spacing:-.025em;
  line-height:1;
}

/* Pipeline rows */
.bxf-pipeline{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.bxf-pipe-row{
  display:grid;
  grid-template-columns:18px 1fr auto auto;
  gap:10px;
  align-items:center;
  padding:7px 10px;
  background:#fff;
  border:1px solid rgba(45,49,66,.08);
  border-radius:6px;
  font-family:'Plus Jakarta Sans',sans-serif;
}
.bxf-pipe-row.done{border-left:3px solid var(--bx-green)}
.bxf-pipe-row.progress{border-left:3px solid var(--finance);background:rgba(91,87,168,.04)}
.bxf-pipe-ic{
  font-size:11px;
  font-weight:800;
  text-align:center;
}
.bxf-pipe-row.done .bxf-pipe-ic{color:var(--bx-green-d)}
.bxf-pipe-row.progress .bxf-pipe-ic{color:var(--finance);animation:bxf-prog-pulse 1.4s ease-in-out infinite}
@keyframes bxf-prog-pulse{
  0%,100%{opacity:1}
  50%{opacity:.4}
}
.bxf-pipe-bank{
  font-size:10.5px;
  font-weight:700;
  color:var(--ink);
}
.bxf-pipe-val{
  font-size:10px;
  font-weight:800;
  color:var(--finance);
  letter-spacing:-.01em;
  font-variant-numeric:tabular-nums;
}
.bxf-pipe-status{
  font-size:8.5px;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  padding:3px 7px;
  border-radius:999px;
}
.status-done{background:rgba(54,181,99,.12);color:var(--bx-green-d)}
.status-progress{background:rgba(91,87,168,.12);color:var(--finance)}

/* Footnote */
.bxf-footnote{
  padding:9px 16px;
  background:linear-gradient(180deg,#FAFBFD 0%,#F4F4F8 100%);
  border-top:1px solid rgba(45,49,66,.08);
  display:flex;
  align-items:center;
  gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:10px;
  color:var(--muted);
  font-weight:600;
}
.bxf-footnote b{color:var(--finance);font-weight:800}
.bxf-pulse{
  width:8px;height:8px;border-radius:50%;
  background:var(--bx-green);
  animation:bxf-live-pulse 1.6s ease-in-out infinite;
}

/* Reveal */
.bxf-frame{
  opacity:0;
  transform:translateY(20px) rotateY(-2deg) rotateX(1deg);
  transition:opacity .8s ease,transform .9s cubic-bezier(.2,.85,.25,1);
}
.bxf-dealroom.in-view .bxf-frame{
  opacity:1;
  transform:translateY(0) rotateY(-2deg) rotateX(1deg);
}
.bxf-pipe-row{
  opacity:0;
  transform:translateX(-8px);
  transition:opacity .5s ease,transform .5s cubic-bezier(.2,.85,.25,1);
}
.bxf-dealroom.in-view .bxf-pipe-row{opacity:1;transform:translateX(0)}
.bxf-dealroom.in-view .bxf-pipe-row:nth-of-type(1){transition-delay:2.8s}
.bxf-dealroom.in-view .bxf-pipe-row:nth-of-type(2){transition-delay:2.95s}
.bxf-dealroom.in-view .bxf-pipe-row:nth-of-type(3){transition-delay:3.1s}

@media (prefers-reduced-motion:reduce){
  .bxf-frame,.bxf-line,.bxf-point,.bxf-area,.bxf-label,.bxf-pipe-row,
  .bxf-live-dot,.bxf-pulse,.bxf-pipe-row.progress .bxf-pipe-ic{
    animation:none !important;
    transition:none !important;
    transform:none !important;
    opacity:1 !important;
  }
  .bxf-line{stroke-dashoffset:0 !important}
  .bxf-area{opacity:1 !important}
  .bxf-frame{transform:rotateY(-2deg) rotateX(1deg) !important}
}

/* esconder shape antigo no /finance */
.page-hero.bg-fin .page-hero-shape.s-fin{display:none}

/* ============================================================
   v6.0 — Certified como divisão complementar (hierarquia home)
   ============================================================ */
.tc-compl-tag{
  display:inline-block;
  align-self:flex-start;
  font-family:'Plus Jakarta Sans',sans-serif;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--certified);
  background:var(--certified-light);
  border:1px solid rgba(74,120,194,.3);
  padding:4px 10px;
  border-radius:999px;
  margin-bottom:2px;
}
.tc-compl .tc-head{min-height:150px}
.tc-compl .tc-logo{height:54px}

/* ============================================================
   v6.3 — LIDERANÇA REDESIGN (.ldx-)
   Mapa de governança + grids compactos com perfil expansível
   ============================================================ */

/* ---------- MAPA DE GOVERNANÇA ---------- */
.ldx-map-section{padding:56px 0 64px;background:linear-gradient(180deg,#FBF8F2 0%,#fff 100%)}
.ldx-map{display:flex;flex-direction:column;align-items:center}
.ldx-map-root{
  display:flex;flex-direction:column;align-items:center;gap:10px;
  background:#fff;border:1px solid rgba(244,200,27,.45);border-radius:18px;
  padding:22px 38px;box-shadow:0 8px 24px rgba(244,200,27,.15),var(--shadow-sm);
}
.ldx-map-root img{height:46px;width:auto}
.ldx-map-root-sub{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;
  color:var(--ink-soft);letter-spacing:.18em;text-transform:uppercase;
}
.ldx-map-trunk{
  width:2px;height:34px;
  background:linear-gradient(180deg,var(--bx-yellow) 0%,rgba(45,49,66,.18) 100%);
}
.ldx-map-branches{
  display:grid;grid-template-columns:1fr 1fr;gap:22px;width:100%;max-width:980px;
  position:relative;
}
.ldx-map-branches::before{
  content:"";position:absolute;top:-1px;left:25%;right:25%;height:2px;
  background:rgba(45,49,66,.14);
}
.ldx-map-pillar{
  background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:20px 22px;box-shadow:var(--shadow-sm);
  border-top:4px solid;position:relative;
}
.ldx-map-pillar::before{
  content:"";position:absolute;top:-26px;left:50%;width:2px;height:22px;
  background:rgba(45,49,66,.14);
}
.ldx-map-fin{border-top-color:var(--finance)}
.ldx-map-out{border-top-color:var(--outsourcing)}
.ldx-map-pillar-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.ldx-map-pillar-head img{height:34px;width:auto}
.ldx-map-pillar-head b{
  display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:16px;
  font-weight:800;color:var(--ink);letter-spacing:-.01em;
}
.ldx-map-pillar-head small{font-size:11.5px;color:var(--ink-soft);font-weight:600}
.ldx-map-chips{display:flex;flex-wrap:wrap;gap:8px}
.ldx-chip{
  display:inline-flex;align-items:center;gap:7px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:12.5px;font-weight:800;
  color:var(--ink);padding:6px 12px 6px 6px;border-radius:999px;
  background:var(--bg);border:1px solid var(--line);
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
.ldx-chip:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}
.ldx-chip-mono{
  width:24px;height:24px;border-radius:50%;display:grid;place-items:center;
  font-size:9.5px;font-weight:800;color:#fff;letter-spacing:0;
}
.ldx-chip-fin .ldx-chip-mono{background:var(--finance)}
.ldx-chip-fin:hover{border-color:var(--finance)}
.ldx-chip-out .ldx-chip-mono{background:var(--outsourcing)}
.ldx-chip-out:hover{border-color:var(--outsourcing)}

/* ---------- SEÇÕES POR EMPRESA ---------- */
.ldx-section{padding:56px 0 64px;background:#fff}
.ldx-sec-head{
  display:flex;align-items:center;gap:18px;margin-bottom:26px;
  padding:18px 22px;border-radius:14px;background:var(--bg-2);
  border:1px solid var(--line);border-left:5px solid;
}
.ldx-sec-fin{border-left-color:var(--finance)}
.ldx-sec-out{border-left-color:var(--outsourcing)}
.ldx-sec-head img{height:38px;width:auto}
.ldx-sec-head > div{flex:1}
.ldx-sec-eyebrow{
  display:block;font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;
  font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);
}
.ldx-sec-fin .ldx-sec-eyebrow{color:var(--finance)}
.ldx-sec-out .ldx-sec-eyebrow{color:var(--outsourcing)}
.ldx-sec-desc{margin:4px 0 0;font-size:13.5px;color:var(--ink-soft);font-weight:600}
.ldx-sec-count{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:800;
  color:var(--ink);background:#fff;border:1px solid var(--line);
  padding:7px 14px;border-radius:999px;white-space:nowrap;
}

/* ---------- GRIDS + CARDS ---------- */
.ldx-grid{display:grid;gap:18px}
.ldx-grid-2{grid-template-columns:1fr 1fr}
.ldx-grid-3{grid-template-columns:repeat(3,1fr)}
.ldx-card{
  position:relative;background:#fff;border:1px solid var(--line);
  border-radius:16px;padding:24px 24px 18px;overflow:hidden;
  box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:14px;
  transition:transform .22s,box-shadow .22s;
  scroll-margin-top:110px;
}
.ldx-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.ldx-card-top{position:absolute;top:0;left:0;right:0;height:4px}
.ldx-card-fin .ldx-card-top{background:var(--finance)}
.ldx-card-out .ldx-card-top{background:var(--outsourcing)}
.ldx-card-head{display:flex;align-items:center;gap:14px}
.ldx-mono{
  width:54px;height:54px;border-radius:14px;display:grid;place-items:center;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:18px;font-weight:800;
  flex-shrink:0;letter-spacing:-.5px;
}
.ldx-card-fin .ldx-mono{background:var(--finance-light);color:var(--finance);border:1px solid rgba(91,87,168,.3)}
.ldx-card-out .ldx-mono{background:var(--outsourcing-light);color:var(--outsourcing);border:1px solid rgba(244,148,35,.3)}
.ldx-nome{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:19px;font-weight:800;
  color:var(--ink);letter-spacing:-.02em;margin:0 0 3px;line-height:1.15;
}
.ldx-role{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:11px;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;margin:0;line-height:1.35;
}
.ldx-card-fin .ldx-role{color:var(--finance)}
.ldx-card-out .ldx-role{color:var(--outsourcing)}
.ldx-quote{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:13.5px;font-style:italic;
  font-weight:600;color:var(--ink);line-height:1.45;margin:0;
  padding-left:14px;border-left:3px solid var(--bx-yellow);
}
.ldx-areas{display:flex;flex-wrap:wrap;gap:6px}
.ldx-areas span{
  font-family:'Plus Jakarta Sans',sans-serif;font-size:10px;font-weight:800;
  letter-spacing:.05em;padding:4px 10px;border-radius:999px;
  background:var(--bg);color:var(--ink-soft);border:1px solid var(--line);
}

/* details expansível */
.ldx-details{margin-top:auto;border-top:1px solid var(--line);padding-top:12px}
.ldx-details summary{
  cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:8px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:12.5px;font-weight:800;
  color:var(--ink);user-select:none;
}
.ldx-details summary::-webkit-details-marker{display:none}
.ldx-details summary::after{
  content:"+";font-size:15px;line-height:1;
  width:20px;height:20px;border-radius:50%;display:grid;place-items:center;
  background:var(--bx-yellow);color:var(--ink);font-weight:800;
  transition:transform .2s;
}
.ldx-details[open] summary::after{content:"–"}
.ldx-bio{padding-top:12px}
.ldx-bio p{font-size:13.5px;line-height:1.6;color:var(--ink-soft);margin:0 0 10px}
.ldx-meta{
  display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:4px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:700;
  color:var(--muted);
}
.ldx-meta a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1024px){
  .ldx-grid-3{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  .ldx-map-branches{grid-template-columns:1fr}
  .ldx-map-branches::before{display:none}
  .ldx-map-pillar::before{display:none}
  .ldx-grid-2,.ldx-grid-3{grid-template-columns:1fr}
  .ldx-sec-head{flex-wrap:wrap}
}

/* v6.4 — lideranca: bios abertas inline (sem details) */
.ldx-card .ldx-bio{padding-top:0}
.ldx-card .ldx-bio p{font-size:13.5px;line-height:1.62;color:var(--ink-soft);margin:0 0 10px}
.ldx-card .ldx-bio p:last-child{margin-bottom:0}
.ldx-card .ldx-meta{
  margin-top:auto;border-top:1px solid var(--line);padding-top:12px;
  display:flex;flex-wrap:wrap;gap:6px 18px;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:12px;font-weight:700;color:var(--muted);
}

/* ============================================================
   DGX — Diagnóstico: painel executivo de resultado (v6.5)
   ============================================================ */
.dgx-panel{background:#fff;border:1px solid #E8EBF2;border-radius:18px;overflow:hidden;box-shadow:0 18px 50px rgba(26,30,46,.10);text-align:left}
.dgx-chrome{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#1A1E2E;padding:13px 22px}
.dgx-chrome-title{color:#F4C81B;font-size:11.5px;font-weight:800;letter-spacing:2.5px}
.dgx-chrome-live{display:inline-flex;align-items:center;gap:7px;color:#9BA3B8;font-size:11.5px;font-weight:600;letter-spacing:.5px}
.dgx-pulse{width:7px;height:7px;border-radius:50%;background:#36B563;animation:dgxPulse 1.6s ease-in-out infinite}
@keyframes dgxPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}

.dgx-body{display:grid;grid-template-columns:300px 1fr;gap:0;border-bottom:1px solid #EEF0F5}
.dgx-gauge-col{padding:30px 26px 24px;border-right:1px solid #EEF0F5;display:flex;flex-direction:column;align-items:center}
.dgx-gauge-wrap{position:relative;width:200px}
.dgx-gauge{display:block;width:100%}
#dgx-arc{transition:stroke-dashoffset 1.6s cubic-bezier(.22,.8,.3,1),stroke .4s}
.dgx-gauge-center{position:absolute;left:0;right:0;bottom:2px;text-align:center}
.dgx-score-label{font-size:10px;font-weight:800;letter-spacing:2.5px;color:#8A92A6}
.dgx-score,.dgx-gauge-center #score{font-size:46px;font-weight:800;color:#1A1E2E;line-height:1;font-variant-numeric:tabular-nums}
.dgx-tier{margin-top:10px;font-size:14.5px;font-weight:800;text-align:center}
.dgx-scale{width:100%;margin-top:18px}
.dgx-scale-track{position:relative;display:flex;gap:3px;height:6px}
.dgx-scale-track .seg{flex:1;border-radius:3px}
.dgx-scale-track .seg-1{background:#D75F58;flex-grow:30}
.dgx-scale-track .seg-2{background:#F49423;flex-grow:20}
.dgx-scale-track .seg-3{background:#E0B616;flex-grow:25}
.dgx-scale-track .seg-4{background:#36B563;flex-grow:25}
.dgx-scale-marker{position:absolute;top:-4px;left:0;width:3px;height:14px;border-radius:2px;background:#1A1E2E;box-shadow:0 0 0 2px #fff;transition:left 1.6s cubic-bezier(.22,.8,.3,1)}
.dgx-scale-labels{display:flex;justify-content:space-between;margin-top:7px;font-size:10.5px;font-weight:700;letter-spacing:.5px;color:#8A92A6}

.dgx-dims-col{padding:28px 30px 24px}
.dgx-dims-title{font-size:11.5px;font-weight:800;letter-spacing:2.5px;color:#8A92A6;text-transform:uppercase;margin-bottom:18px}
.dgx-dim{margin-bottom:16px}
.dgx-dim-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.dgx-dim-head span{font-size:14.5px;font-weight:800;color:#1A1E2E}
.dgx-dim-val{font-size:14px;font-weight:800;font-variant-numeric:tabular-nums}
.dgx-dim-track{height:8px;border-radius:4px;background:#EEF0F5;overflow:hidden}
.dgx-dim-fill{display:block;height:100%;width:0;border-radius:4px;transition:width 1.2s cubic-bezier(.22,.8,.3,1)}
.dgx-dim-note{margin:6px 0 0;font-size:12.5px;color:#8A92A6;line-height:1.45}
.dgx-profile{margin-top:20px;padding-top:16px;border-top:1px dashed #E8EBF2}
.dgx-profile-label{font-size:10px;font-weight:800;letter-spacing:2.5px;color:#8A92A6}
.dgx-profile-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.dgx-chip{display:inline-flex;flex-direction:column;gap:1px;background:#FAFBFD;border:1px solid #E8EBF2;border-radius:9px;padding:7px 12px;font-size:12.5px;font-weight:600;color:#2D3142;line-height:1.3}
.dgx-chip b{font-size:9.5px;font-weight:800;letter-spacing:1.5px;color:#8A92A6;text-transform:uppercase}

.dgx-reading{padding:26px 30px;border-bottom:1px solid #EEF0F5;background:#FAFBFD}
.dgx-reading-eyebrow{font-size:11px;font-weight:800;letter-spacing:2.5px;color:#B8860B}
.dgx-reading-head h3{margin:8px 0 10px;font-size:21px;line-height:1.3;color:#1A1E2E}
.dgx-reading p{margin:0;font-size:14.5px;line-height:1.7;color:#5A6178}

.dgx-priorities{padding:26px 30px;border-bottom:1px solid #EEF0F5}
.dgx-prio-eyebrow{font-size:11px;font-weight:800;letter-spacing:2.5px;color:#8A92A6}
.dgx-priorities ol{margin:14px 0 0;padding:0;list-style:none;counter-reset:dgxprio;display:grid;gap:12px}
.dgx-priorities li{counter-increment:dgxprio;position:relative;padding:14px 16px 14px 52px;background:#fff;border:1px solid #E8EBF2;border-radius:12px}
.dgx-priorities li::before{content:counter(dgxprio,decimal-leading-zero);position:absolute;left:16px;top:14px;font-size:14px;font-weight:800;color:#B8860B;font-variant-numeric:tabular-nums}
.dgx-priorities li b{display:block;font-size:14.5px;color:#1A1E2E;margin-bottom:3px}
.dgx-priorities li span{font-size:13px;line-height:1.55;color:#5A6178}

.dgx-foot{padding:20px 30px 24px;display:flex;flex-direction:column;gap:12px}
.dgx-divs{display:flex;flex-wrap:wrap;gap:8px}
.dgx-divs span{font-size:11.5px;font-weight:800;letter-spacing:1px;padding:6px 13px;border-radius:99px;text-transform:uppercase}
.dgx-divs .d-out{background:rgba(240,134,57,.12);color:#C05F1A}
.dgx-divs .d-fin{background:rgba(108,99,255,.12);color:#5247CC}
.dgx-divs .d-cer{background:rgba(54,181,99,.12);color:#28944D}
.dgx-disclaimer{margin:0;font-size:12px;color:#8A92A6;line-height:1.5}

@media(max-width:760px){
  .dgx-body{grid-template-columns:1fr}
  .dgx-gauge-col{border-right:none;border-bottom:1px solid #EEF0F5}
  .dgx-chrome{flex-direction:column;align-items:flex-start;gap:4px}
  .dgx-reading,.dgx-priorities,.dgx-dims-col,.dgx-foot{padding-left:20px;padding-right:20px}
}
@media(prefers-reduced-motion:reduce){
  #dgx-arc,.dgx-dim-fill,.dgx-scale-marker{transition:none}
  .dgx-pulse{animation:none}
}

/* ============================================================
   FDX — Palavra do fundador (v7.0)
   ============================================================ */
.fdx-hero{padding:72px 0 56px;background:linear-gradient(180deg,#FAFBFD 0%,#fff 100%)}
.fdx-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.fdx-hero-copy h1{font-size:clamp(34px,4.2vw,52px);line-height:1.12;margin:18px 0 20px;color:#1A1E2E}
.fdx-hero-copy h1 em{font-style:normal;color:#B8860B}
.fdx-byline{font-size:15.5px;color:#5A6178}
.fdx-byline strong{color:#1A1E2E}

.fdx-art{background:#1A1E2E;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px rgba(26,30,46,.25)}
.fdx-art-chrome{display:flex;align-items:center;gap:6px;padding:11px 16px;background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.07)}
.fdx-art-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.16)}
.fdx-art-title{margin-left:10px;font-size:10px;font-weight:800;letter-spacing:2.5px;color:#8A92A6}
.fdx-skyline{display:block;width:100%}
.fdx-big rect,.fdx-small rect{fill:#262B3E}
.fdx-win-dim rect{fill:#343A52}
.fdx-mid-b{fill:#2D3349;stroke:rgba(244,200,27,.35);stroke-width:1}
.fdx-win-mid rect{fill:#3A4059;animation:fdxLight 1.1s ease forwards;opacity:.9}
.fdx-win-mid rect:nth-child(3n){animation-delay:.5s}
.fdx-win-mid rect:nth-child(3n+1){animation-delay:1.1s}
.fdx-win-mid rect:nth-child(4n){animation-delay:1.7s}
.fdx-win-mid rect:nth-child(5n){animation-delay:2.2s}
.fdx-win-mid rect:nth-child(7n){animation-delay:2.8s}
@keyframes fdxLight{to{fill:#F4C81B}}
.fdx-beam{fill:#F4C81B;opacity:.85;animation:fdxBeam 2.6s ease-in-out infinite}
@keyframes fdxBeam{0%,100%{opacity:.85}50%{opacity:.4}}
.fdx-ground{stroke:rgba(255,255,255,.12);stroke-width:1.5}
.fdx-cap{fill:#5A6178;font-size:10.5px;font-weight:700;letter-spacing:1px;text-anchor:middle;font-family:'Nunito',sans-serif}
.fdx-cap-mid{fill:#F4C81B}

.fdx-letter-section{padding:48px 0 56px}
.fdx-letter{max-width:720px;margin:0 auto}
.fdx-letter p{font-size:17.5px;line-height:1.85;color:#3A4054;margin:0 0 26px}
.fdx-letter p a{color:#1A1E2E;font-weight:700;text-decoration:underline;text-decoration-color:rgba(244,200,27,.6);text-underline-offset:3px}
.fdx-open{font-size:22px !important;line-height:1.65 !important;font-weight:700;color:#1A1E2E !important}
.fdx-open::first-letter{font-size:64px;font-weight:800;float:left;line-height:.9;padding:6px 12px 0 0;color:#B8860B}
.fdx-pull{margin:38px 0;padding:6px 0 6px 28px;border-left:4px solid #F4C81B}
.fdx-pull p{font-size:22px !important;line-height:1.55 !important;font-weight:700;color:#1A1E2E !important;margin:0 !important}
.fdx-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:34px 0}
.fdx-numbers div{background:#FAFBFD;border:1px solid #E8EBF2;border-radius:12px;padding:18px 16px}
.fdx-numbers b{display:block;font-size:26px;font-weight:800;color:#1A1E2E;font-variant-numeric:tabular-nums}
.fdx-numbers span{display:block;margin-top:4px;font-size:12.5px;color:#8A92A6;line-height:1.4}
.fdx-signature{margin-top:44px;padding-top:28px;border-top:1px solid #E8EBF2;display:flex;flex-direction:column}
.fdx-sig-name{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:36px;color:#1A1E2E}
.fdx-sig-role{margin-top:6px;font-size:13px;font-weight:800;letter-spacing:2px;color:#8A92A6;text-transform:uppercase}

.fdx-cta{padding:8px 0 80px}
.fdx-cta-card{background:#1A1E2E;border-radius:20px;padding:54px 56px;text-align:center;box-shadow:0 24px 60px rgba(26,30,46,.25)}
.fdx-cta-card h2{color:#fff;font-size:clamp(24px,3vw,34px);line-height:1.25;margin:0 0 14px}
.fdx-cta-card h2 em{font-style:normal;color:#F4C81B}
.fdx-cta-card p{color:#9BA3B8;font-size:15.5px;line-height:1.6;max-width:560px;margin:0 auto 28px}
.fdx-cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.btn-ghost-light{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:12px;border:1.5px solid rgba(255,255,255,.25);color:#fff;font-weight:800;font-size:15px;text-decoration:none;transition:border-color .2s}
.btn-ghost-light:hover{border-color:#F4C81B}
.fdx-next{display:flex;gap:26px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.fdx-next a{font-size:14px;font-weight:800;color:#5A6178;text-decoration:none}
.fdx-next a:hover{color:#1A1E2E}

/* teaser na home / grupo */
.fdx-teaser{padding:64px 0;background:#fff}
.fdx-teaser-card{max-width:860px;margin:0 auto;text-align:center;padding:0 16px}
.fdx-teaser-card .fdx-teaser-eyebrow{font-size:11.5px;font-weight:800;letter-spacing:2.5px;color:#B8860B;text-transform:uppercase}
.fdx-teaser-card blockquote{margin:16px 0 18px;font-size:clamp(22px,2.8vw,30px);line-height:1.4;font-weight:800;color:#1A1E2E}
.fdx-teaser-card .fdx-teaser-by{font-size:14px;color:#8A92A6;margin-bottom:22px}
.fdx-teaser-card .fdx-teaser-by b{color:#2D3142}

@media(max-width:880px){
  .fdx-hero-grid{grid-template-columns:1fr;gap:32px}
  .fdx-numbers{grid-template-columns:1fr;gap:10px}
  .fdx-cta-card{padding:38px 24px}
}
@media(prefers-reduced-motion:reduce){
  .fdx-win-mid rect{animation:none;fill:#F4C81B}
  .fdx-beam{animation:none}
}

/* FDX v7.1 — marco 2008 + marcações */
.fdx-mark{background:linear-gradient(180deg,transparent 60%,rgba(244,200,27,.4) 60%);font-weight:700;color:#1A1E2E;padding:0 1px}
.fdx-letter strong{color:#1A1E2E}
.fdx-marco{position:relative;margin:40px -28px;background:#1A1E2E;border-radius:18px;padding:36px 40px 38px;overflow:hidden;box-shadow:0 22px 56px rgba(26,30,46,.28)}
.fdx-marco::before{content:"2008";position:absolute;right:-12px;top:-34px;font-size:150px;font-weight:800;letter-spacing:-4px;color:rgba(255,255,255,.045);font-family:'Plus Jakarta Sans',sans-serif;pointer-events:none}
.fdx-marco::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#F4C81B}
.fdx-marco-eyebrow{display:inline-block;font-size:11px;font-weight:800;letter-spacing:3px;color:#F4C81B;text-transform:uppercase}
.fdx-marco p{position:relative;color:#C7CCDA !important;font-size:16.5px !important;line-height:1.8 !important;margin:14px 0 0 !important}
.fdx-marco-punch{font-size:32px !important;font-weight:800;color:#fff !important;line-height:1.22 !important;margin-top:22px !important;font-family:'Plus Jakarta Sans',sans-serif}
.fdx-marco-punch em{font-style:normal;color:#F4C81B}
@media(max-width:880px){
  .fdx-marco{margin:34px 0;padding:28px 24px 30px}
  .fdx-marco::before{font-size:96px;top:-20px}
  .fdx-marco-punch{font-size:26px !important}
}

/* nav — Fundador (assinatura amarela) */
.menu a.nav-fdx{display:inline-flex;align-items:center;gap:8px}
.menu a.nav-fdx::before{content:"";width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--bx-yellow);box-shadow:0 0 0 2px rgba(244,200,27,.22);transition:transform .2s,box-shadow .2s}
.menu a.nav-fdx:hover::before{transform:scale(1.4);box-shadow:0 0 0 4px rgba(244,200,27,.3)}

/* hero — assinatura do fundador (v7.2) */
.hero-founder{display:inline-flex;align-items:center;gap:14px;margin:26px 0 0;text-decoration:none}
.hf-sig{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:23px;color:var(--ink);line-height:1}
.hf-sep{width:34px;height:1.5px;background:var(--bx-yellow);transition:width .25s}
.hf-label{font-size:13px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-2);transition:color .2s}
.hero-founder:hover .hf-sep{width:52px}
.hero-founder:hover .hf-label{color:var(--ink)}
@media(max-width:640px){.hf-sig{font-size:20px}.hf-label{font-size:11.5px;letter-spacing:1px}}

/* ============================================================
   CSX — Cases: clientes nomeados + matriz (v7.3)
   ============================================================ */
.csx-head{max-width:680px;margin:0 auto 44px;text-align:center}
.csx-head h2{font-size:clamp(26px,3.2vw,38px);margin:14px 0 12px;color:#1A1E2E}
.csx-head h2 em{font-style:normal;color:#B8860B}
.csx-head p{font-size:15.5px;line-height:1.65;color:#5A6178;margin:0}
.csx-head .sec-eyebrow{margin:0 auto;display:inline-flex}

.csx-wall{padding:24px 0 72px;background:#fff}
.csx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.csx-card{background:#1A1E2E;border-radius:16px;padding:26px 26px 24px;display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.csx-card::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,#F4C81B,rgba(244,200,27,.1))}
.csx-card:hover{transform:translateY(-4px);box-shadow:0 22px 50px rgba(26,30,46,.28)}
.csx-top{display:flex;align-items:center;gap:14px}
.csx-mono{flex:0 0 auto;min-width:46px;height:46px;padding:0 8px;border-radius:12px;border:1.5px solid rgba(244,200,27,.5);color:#F4C81B;font-weight:800;font-size:15px;display:inline-flex;align-items:center;justify-content:center;letter-spacing:1px}
.csx-card h3{margin:0;color:#fff;font-size:20px;line-height:1.2}
.csx-chips{display:flex;flex-wrap:wrap;gap:7px}
.csx-chips span{font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;padding:5px 11px;border-radius:99px}
.csx-chips .cf{background:rgba(108,99,255,.18);color:#B0AAFF}
.csx-chips .co{background:rgba(240,134,57,.18);color:#F5A562}
.csx-chips .cb{background:rgba(244,200,27,.16);color:#F4C81B}
.csx-card p{margin:0;font-size:13.5px;line-height:1.6;color:#9BA3B8}

.csx-matrix-sec{padding:64px 0 72px;background:#FAFBFD;border-top:1px solid #EEF0F5;border-bottom:1px solid #EEF0F5}
.csx-matrix-wrap{overflow-x:auto;background:#fff;border:1px solid #E8EBF2;border-radius:16px;box-shadow:0 14px 40px rgba(26,30,46,.07)}
.csx-matrix{width:100%;border-collapse:collapse;min-width:640px}
.csx-matrix th{font-size:11px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#8A92A6;padding:14px 12px;border-bottom:2px solid #EEF0F5;text-align:center}
.csx-matrix th:first-child{text-align:left;padding-left:22px}
.csx-matrix td{padding:13px 12px;border-bottom:1px solid #F2F4F9;text-align:center}
.csx-matrix td:first-child{text-align:left;padding-left:22px;font-weight:800;font-size:14px;color:#1A1E2E;white-space:nowrap}
.csx-matrix tr:last-child td{border-bottom:none}
.csx-matrix tbody tr:hover{background:#FAFBFD}
.csx-matrix i{display:inline-block;width:12px;height:12px;border-radius:50%}
.csx-matrix .df{background:#6C63FF;box-shadow:0 0 0 3px rgba(108,99,255,.15)}
.csx-matrix .do{background:#F08639;box-shadow:0 0 0 3px rgba(240,134,57,.15)}
.csx-matrix .db{background:#F4C81B;box-shadow:0 0 0 3px rgba(244,200,27,.18)}
.csx-tally{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-top:26px}
.csx-tally div{background:#fff;border:1px solid #E8EBF2;border-radius:12px;padding:16px 18px;text-align:center}
.csx-tally b{display:block;font-size:26px;font-weight:800;color:#1A1E2E;font-variant-numeric:tabular-nums}
.csx-tally span{display:block;margin-top:3px;font-size:12px;color:#8A92A6;line-height:1.4}

.csx-anon-head{margin-top:8px;margin-bottom:54px}

@media(max-width:640px){
  .csx-grid{grid-template-columns:1fr}
  .csx-wall{padding-bottom:56px}
}

/* CSX — slots de logo e métricas dos clientes nomeados */
.csx-logo{max-height:30px;max-width:150px;object-fit:contain;filter:brightness(0) invert(1);opacity:.95}
.csx-metrics{display:flex;gap:12px;margin-top:2px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}
.csx-metrics div{flex:1}
.csx-metrics b{display:block;font-size:19px;font-weight:800;color:#F4C81B;font-variant-numeric:tabular-nums}
.csx-metrics span{display:block;margin-top:2px;font-size:11px;letter-spacing:.5px;color:#9BA3B8;text-transform:uppercase}

/* ============================================================
   CSX v2 — Registro de mandatos interativo (v7.4)
   ============================================================ */
.csx-ledger-sec{padding:24px 0 72px;background:#fff}
.csx-ledger{display:grid;grid-template-columns:1fr 1.1fr;background:#1A1E2E;border-radius:20px;overflow:hidden;box-shadow:0 26px 64px rgba(26,30,46,.28);min-height:540px}
.csx-roster{display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.07)}
.csx-row{display:flex;align-items:center;gap:14px;padding:14px 22px;background:none;border:none;border-bottom:1px solid rgba(255,255,255,.05);cursor:pointer;text-align:left;flex:1;transition:background .18s;font-family:inherit}
.csx-row:last-child{border-bottom:none}
.csx-row:hover{background:rgba(255,255,255,.035)}
.csx-row.active{background:rgba(244,200,27,.08);box-shadow:inset 3px 0 0 #F4C81B}
.csx-idx{font-size:11px;font-weight:800;color:#5A6178;width:22px;font-variant-numeric:tabular-nums}
.csx-row .csx-name{flex:1;font-weight:800;font-size:15.5px;color:#9BA3B8;transition:color .18s}
.csx-row:hover .csx-name,.csx-row.active .csx-name{color:#fff}
.csx-dots{display:inline-flex;gap:5px}
.csx-dots i{width:8px;height:8px;border-radius:50%;display:inline-block}
.csx-dots .pf{background:#6C63FF}
.csx-dots .po{background:#F08639}
.csx-dots .pb{background:#F4C81B}

.csx-detail{display:flex;flex-direction:column;padding:38px 40px 26px;position:relative}
.csx-detail-inner{flex:1}
.csx-anim{animation:csxFade .35s ease}
@keyframes csxFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.csx-d-top{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.csx-d-mono{flex:0 0 auto;min-width:54px;height:54px;padding:0 10px;border-radius:14px;border:1.5px solid rgba(244,200,27,.5);color:#F4C81B;font-weight:800;font-size:17px;display:inline-flex;align-items:center;justify-content:center;letter-spacing:1px}
.csx-d-top h3{margin:0;color:#fff;font-size:26px;line-height:1.15}
.csx-d-origem{display:block;margin-top:4px;font-size:11.5px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:#8A92A6}
.csx-detail .csx-chips{margin-bottom:16px}
.csx-d-desc{margin:0;font-size:15.5px;line-height:1.75;color:#C7CCDA}
.csx-detail .csx-metrics{margin-top:20px}
.csx-detail-foot{margin-top:24px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07);font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#5A6178}

@media(max-width:880px){
  .csx-ledger{grid-template-columns:1fr;min-height:0}
  .csx-roster{border-right:none;border-bottom:1px solid rgba(255,255,255,.07)}
  .csx-row{padding:13px 18px}
  .csx-detail{padding:26px 22px 20px}
  .csx-d-top h3{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.csx-anim{animation:none}}

/* CSX v3 — hero confiante + letreiro de nomes (v7.5) */
.csx-hero{padding:84px 0 8px;border-bottom:1px solid #EEF0F5;background:linear-gradient(180deg,#FAFBFD 0%,#fff 100%)}
.csx-hero .container{max-width:980px}
.csx-hero h1{font-size:clamp(36px,4.6vw,58px);line-height:1.08;margin:18px 0 18px;color:#1A1E2E}
.csx-hero h1 em{font-style:normal;color:#B8860B}
.csx-hero p{font-size:17px;line-height:1.7;color:#5A6178;max-width:640px;margin:0 0 52px}
.csx-marquee{overflow:hidden;border-top:1px solid #EEF0F5;border-bottom:1px solid #EEF0F5;padding:20px 0;background:#fff}
.csx-mq-track{display:flex;align-items:center;gap:36px;width:max-content;animation:csxMq 48s linear infinite}
.csx-marquee:hover .csx-mq-track{animation-play-state:paused}
.csx-mq-track span{font-size:21px;font-weight:800;color:#2D3142;white-space:nowrap;letter-spacing:-.2px}
.csx-mq-track i{width:7px;height:7px;border-radius:50%;background:#F4C81B;flex:0 0 auto}
@keyframes csxMq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:640px){
  .csx-hero{padding-top:56px}
  .csx-mq-track span{font-size:17px}
  .csx-mq-track{gap:24px}
}
@media(prefers-reduced-motion:reduce){.csx-mq-track{animation:none}}

/* CSX — dossiê com histórico (v7.6) */
.csx-d-hist{margin:0 0 16px;font-size:14.5px;line-height:1.7;color:#9BA3B8}
.csx-d-label{display:block;font-size:10.5px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#F4C81B;margin:0 0 7px}
.csx-detail .csx-chips{margin-bottom:18px}
