/* ── DS TOKENS ─────────────────────────────────────────────── */
.ep2 {
  --ep-green-lime:#96c02c; --ep-green-neon:#52bf42; --ep-green-mid:#43ab49;
  --ep-green-deep:#009d62; --ep-green-700:#00794b;
  --ep-gradient-brand:linear-gradient(90deg,#96c02c 0%,#43ab49 50%,#009d62 100%);
  --ep-gradient-diag:linear-gradient(135deg,#96c02c 0%,#43ab49 50%,#009d62 100%);
  --ep-lilac-500:#7572b9; --ep-lilac-400:#a7a4bc;
  --ep-lilac-border:rgba(117,114,185,.22); --ep-lilac-glow:rgba(117,114,185,.1);
  --ep-bg:#0b0c07; --ep-bg-card:#1c1e16; --ep-bg-elevated:#15170f;
  --ep-border:rgba(255,255,255,0.08); --ep-border-strong:rgba(255,255,255,0.16);
  --ep-border-brand:rgba(82,191,66,0.3);
  --ep-text:#f6f7f5; --ep-text-muted:#a7a9a1; --ep-text-dim:#6b6d64;
  --ep-text-brand:#52bf42;
  --ep-font-sans:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
  --ep-font-mono:'JetBrains Mono',ui-monospace,monospace;
  --ep-r-sm:6px; --ep-r-md:10px; --ep-r-lg:16px; --ep-r-xl:24px; --ep-r-pill:999px;
  --ep-dur:240ms; --ep-ease:cubic-bezier(.2,.7,.2,1);
  --ep-glow-green:0 0 0 1px rgba(82,191,66,0.25),0 12px 32px rgba(82,191,66,0.25);
  --ep-glow-soft:0 0 32px rgba(82,191,66,0.18);
  --ep-shadow-lg:0 20px 40px rgba(0,0,0,0.5);
}

/* ── HEADER LIGHT ──────────────────────────────────────────── */
#header { background:#fff !important; border-bottom:1px solid #e9ebe6 !important; box-shadow:0 2px 16px rgba(0,0,0,0.06) !important; }
#header #logo img { filter:none !important; }
#header #menu ul li a,#header #menu ul li a:visited { color:#15170f !important; }
#header #menu ul li a:hover { color:#43ab49 !important; }
#header #menu ul li.customBt a { background:linear-gradient(90deg,#96c02c,#43ab49 50%,#009d62) !important; background-size:220% 100% !important; color:#fff !important; border-radius:8px !important; padding:10px 20px !important; animation:eplusCtaFlow 7s ease-in-out infinite; }
@keyframes eplusCtaFlow { 0%{background-position:0% 50%;} 50%{background-position:100% 50%;} 100%{background-position:0% 50%;} }
@media (prefers-reduced-motion: reduce) { #header #menu ul li.customBt a { animation:none !important; background-position:0% 50% !important; } }
#header #address a,#header #flags a { color:#373a34 !important; }
#header #mobMenuBt { color:#15170f !important; }


/* ── SECTION LIGHT ─────────────────────────────────────────── */
.ep2 .section-light {
  background:#f6f7f5 !important;
  --ep-bg-card:#fff; --ep-border:rgba(0,0,0,0.08); --ep-border-brand:rgba(67,171,73,0.4);
  --ep-text:#15170f; --ep-text-muted:#4a4d47; --ep-text-dim:#8b8f87;
}
.ep2 .section-light h2,.ep2 .section-light h3,.ep2 .section-light h4 { color:#15170f; }
.ep2 .section-light .sec-head p { color:#4a4d47; }
.ep2 .section-light .ep-eyebrow { color:#43ab49; }

/* ── RESET / SCOPE ─────────────────────────────────────────── */
.ep2 *,.ep2 *::before,.ep2 *::after { box-sizing:border-box; }
.ep2 { font-family:var(--ep-font-sans); color:var(--ep-text); background:var(--ep-bg); -webkit-font-smoothing:antialiased; float:left; width:100%; animation:ep2-page-fade .7s var(--ep-ease) both; }
.ep2 a { color:inherit; text-decoration:none; }
.ep2 img,.ep2 svg { display:block; max-width:100%; }
.ep2 ul { list-style:none; padding:0; margin:0; }

@keyframes ep2-page-fade { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }
@media(prefers-reduced-motion:reduce) {
  .ep2 { animation:none; opacity:1; transform:none; }
}

/* ── SCROLL REVEAL ─────────────────────────────────────────── */
.ep2 .reveal { opacity:0; transform:translateY(22px); transition:opacity .55s var(--ep-ease),transform .55s var(--ep-ease); }
.ep2 .reveal.is-visible { opacity:1; transform:none; }
.ep2 .reveal-d1 { transition-delay:.1s; }
.ep2 .reveal-d2 { transition-delay:.2s; }
.ep2 .reveal-d3 { transition-delay:.3s; }
.ep2 .reveal-d4 { transition-delay:.4s; }

/* ── UTILITÁRIOS ────────────────────────────────────────────── */
.ep2 .ep-eyebrow { display:inline-block; font-size:.75rem; letter-spacing:.16em; text-transform:uppercase; font-weight:700; color:var(--ep-text-brand); font-family:var(--ep-font-sans); }
.ep2 .ep-gradient-text { background:var(--ep-gradient-brand); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ep2 .ep-container { width:100%; max-width:1280px; margin:0 auto; padding:0 40px; }
.ep2 .ep-container--sm { max-width:1040px; }
.ep2 .sec-head { text-align:center; max-width:800px; margin:0 auto 64px; }
.ep2 .sec-head h2 { font-size:clamp(1.875rem,4.5vw,3.25rem); font-weight:800; letter-spacing:-.02em; line-height:1.05; margin:12px 0 16px; font-family:var(--ep-font-sans); }
.ep2 .sec-head p { font-size:1.0625rem; color:var(--ep-text-muted); line-height:1.65; }

/* ── BOTÕES ─────────────────────────────────────────────────── */
.ep2 .ep-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:14px 24px; font:600 .875rem/1 var(--ep-font-sans); letter-spacing:.06em; text-transform:uppercase; border-radius:var(--ep-r-pill); border:1px solid transparent; background:transparent; color:var(--ep-text); cursor:pointer; transition:transform var(--ep-dur) var(--ep-ease),background var(--ep-dur) var(--ep-ease),box-shadow var(--ep-dur) var(--ep-ease); white-space:nowrap; }
.ep2 .ep-btn:hover { transform:translateY(-1px); }
.ep2 .ep-btn--primary { background:var(--ep-gradient-brand); color:#0b0c07; box-shadow:var(--ep-glow-green); }
.ep2 .ep-btn--primary:hover { box-shadow:0 0 0 1px rgba(82,191,66,.6),0 16px 40px rgba(82,191,66,.4); }
.ep2 .ep-btn--outline { border-color:var(--ep-green-neon); color:var(--ep-green-neon); }
.ep2 .ep-btn--outline:hover { background:rgba(82,191,66,.08); }
.ep2 .ep-btn--ghost { background:rgba(255,255,255,.06); border-color:var(--ep-border-strong); color:var(--ep-text); }
.ep2 .ep-btn--ghost:hover { background:rgba(255,255,255,.1); }
.ep2 .ep-btn--sm { padding:10px 16px; font-size:.75rem; }
.ep2 .ep-btn--lg { padding:18px 32px; font-size:1rem; }

/* ── HERO ────────────────────────────────────────────────────── */
.ep2 .hero { position:relative; min-height:92vh; display:flex; align-items:center; justify-content:center; padding:100px 40px 120px; text-align:center; overflow:hidden; background:var(--ep-bg); }
.ep2 .hero-video { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; z-index:0; }
.ep2 .hero-video video { width:100%; height:100%; object-fit:cover; opacity:0.35; }
.ep2 .hero-video-overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(11,12,7,0.55) 0%,rgba(11,12,7,0.35) 40%,rgba(11,12,7,0.6) 100%); }
.ep2 .hero-bg { position:absolute; inset:0; pointer-events:none; z-index:1; background:radial-gradient(1200px 600px at 50% 0%,rgba(82,191,66,.14),transparent 55%),radial-gradient(700px 500px at 15% 100%,rgba(0,157,98,.1),transparent 55%),radial-gradient(550px 400px at 92% 85%,rgba(117,114,185,.1),transparent 60%); }
.ep2 .hero-grid { position:absolute; inset:0; pointer-events:none; z-index:1; background-image:linear-gradient(rgba(82,191,66,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(82,191,66,.04) 1px,transparent 1px); background-size:56px 56px; mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 85%); -webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 30%,transparent 85%); }
.ep2 .hero-inner { position:relative; z-index:2; max-width:1100px; }
.ep2 .hero-badge { display:inline-flex; align-items:center; gap:10px; padding:8px 18px; margin-bottom:36px; border:1px solid var(--ep-border-brand); background:rgba(82,191,66,.08); border-radius:var(--ep-r-pill); font:600 .75rem/1 var(--ep-font-sans); letter-spacing:.14em; text-transform:uppercase; color:var(--ep-green-neon); }
.ep2 .hero-badge::before { content:''; width:6px; height:6px; border-radius:999px; background:var(--ep-green-neon); box-shadow:0 0 12px var(--ep-green-neon); animation:pulse-dot 2s ease-in-out infinite; }
@keyframes pulse-dot { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(.8)} }
.ep2 .hero h1 { font-size:clamp(2.5rem,6vw,5.25rem); font-weight:900; line-height:.98; letter-spacing:-.03em; margin:0 0 28px; text-wrap:balance; font-family:var(--ep-font-sans); }
.ep2 .hero .sub { font-size:1.2rem; color:var(--ep-text-muted); max-width:780px; margin:0 auto 44px; line-height:1.6; }
.ep2 .hero .cta-row { display:inline-flex; gap:14px; flex-wrap:wrap; justify-content:center; }
.ep2 .hero .trust { margin-top:72px; font:700 10px/1 var(--ep-font-mono); letter-spacing:.25em; text-transform:uppercase; color:var(--ep-text-dim); }
.ep2 .hero-logos { display:flex; gap:36px; justify-content:center; align-items:center; margin-top:24px; flex-wrap:wrap; }
.ep2 .hero-logos img { max-height:30px; width:auto; max-width:96px; filter:brightness(0) invert(1); opacity:.5; transition:opacity var(--ep-dur) ease; }
.ep2 .hero-logos img:hover { opacity:.85; }

/* ── STATS ───────────────────────────────────────────────────── */
.ep2 .section-stats { padding:80px 0; border-top:1px solid var(--ep-border); }
.ep2 .stats-grid { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--ep-border); border-radius:var(--ep-r-xl); overflow:hidden; }
@media(max-width:900px){.ep2 .stats-grid{grid-template-columns:repeat(2,1fr);}}
.ep2 .stat-item { padding:40px 32px; border-right:1px solid var(--ep-border); background:var(--ep-bg-card); }
.ep2 .stat-item:last-child{border-right:0;}
@media(max-width:900px){.ep2 .stat-item:nth-child(2n){border-right:0;} .ep2 .stat-item:nth-child(-n+2){border-bottom:1px solid var(--ep-border);}}
.ep2 .stat-item .v { font-size:3rem; font-weight:900; letter-spacing:-.03em; line-height:1; background:var(--ep-gradient-brand); -webkit-background-clip:text; background-clip:text; color:transparent; font-family:var(--ep-font-sans); }
.ep2 .stat-item .l { font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ep-text-muted); margin-top:12px; font-weight:700; font-family:var(--ep-font-sans); }

/* ── GRANDES MARCAS ─────────────────────────────────────────── */
.ep2 .section-brands {
  padding:64px 0 0;
  position:relative;
  overflow:hidden;
}
/* cubos isométricos de fundo */
.ep2 .section-brands::before {
  content:'';
  position:absolute;
  inset:0;
  background-image:url('../images/background-cubes.png');
  background-size:520px auto;
  background-position:center center;
  background-repeat:repeat;
  filter:grayscale(1);
  opacity:0.14;
  pointer-events:none;
  z-index:0;
}
/* fade nas bordas laterais e verticais */
.ep2 .section-brands::after {
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(to right, #f6f7f5 0%, transparent 16%, transparent 84%, #f6f7f5 100%),
    linear-gradient(to bottom, #f6f7f5 0%, transparent 22%, transparent 78%, #f6f7f5 100%);
  pointer-events:none;
  z-index:1;
}
.ep2 .section-brands > * { position:relative; z-index:2; }
.ep2 .brands-lead { text-align:center; font-size:clamp(1.5rem,3vw,2.25rem); font-weight:800; letter-spacing:-.02em; line-height:1.2; margin:0 0 0; font-family:var(--ep-font-sans); padding:0 40px; }
.ep2 .section-light .brands-lead { color:#15170f; }
/* grid com células e bordas — efeito da imagem de referência */
.ep2 .brands-grid {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  border-top:1px solid rgba(0,0,0,0.09);
  border-left:1px solid rgba(0,0,0,0.09);
  margin-top:48px;
  margin-bottom:48px;
}
@media(max-width:960px){.ep2 .brands-grid{grid-template-columns:repeat(4,1fr);}}
@media(max-width:560px){.ep2 .brands-grid{grid-template-columns:repeat(3,1fr);}}
.ep2 .brands-grid li {
  padding:28px 16px;
  border-right:1px solid rgba(0,0,0,0.09);
  border-bottom:1px solid rgba(0,0,0,0.09);
  background:rgba(246,247,245,0.68);
  min-height:84px;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background var(--ep-dur) ease;
}
.ep2 .brands-grid li:hover { background:rgba(255,255,255,0.94); }
.ep2 .section-light .brands-grid li { background:rgba(246,247,245,0.68) !important; border-right:1px solid rgba(0,0,0,0.09) !important; border-bottom:1px solid rgba(0,0,0,0.09) !important; }
.ep2 .section-light .brands-grid li:hover { background:rgba(255,255,255,0.95) !important; }
.ep2 .section-light .brands-grid li img { height:26px; width:auto; filter:grayscale(1); opacity:.42; transition:opacity var(--ep-dur) ease,filter var(--ep-dur) ease; }
.ep2 .section-light .brands-grid li:hover img { opacity:.78; filter:grayscale(0); }

/* ── O QUE FAZEMOS ──────────────────────────────────────────── */
.ep2 .section-frentes { padding:120px 0; background-image:radial-gradient(500px 350px at 95% 10%, rgba(117,114,185,.08), transparent 55%); }
.ep2 .frentes-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
@media(max-width:960px){.ep2 .frentes-grid{grid-template-columns:1fr;}}
.ep2 .frente-card { padding:40px 36px; min-height:320px; border:1px solid var(--ep-border); border-radius:var(--ep-r-xl); background:var(--ep-bg-card); display:flex; flex-direction:column; gap:20px; transition:all var(--ep-dur) var(--ep-ease); position:relative; overflow:hidden; }
.ep2 .frente-card:hover { border-color:var(--ep-border-brand); transform:translateY(-4px); box-shadow:var(--ep-glow-soft); }
.ep2 .frente-card--featured { background:linear-gradient(160deg,rgba(82,191,66,.1),rgba(0,157,98,.05),var(--ep-bg-card)); border-color:var(--ep-border-brand); }
.ep2 .frente-card--featured::before { content:''; position:absolute; top:-40px; right:-40px; width:220px; height:220px; background:radial-gradient(circle,rgba(82,191,66,.15),transparent 70%); pointer-events:none; }
.ep2 .frente-num { font:800 .7rem/1 var(--ep-font-mono); letter-spacing:.2em; text-transform:uppercase; color:var(--ep-text-dim); }
.ep2 .frente-card h3 { font-size:1.625rem; font-weight:800; margin:0; letter-spacing:-.02em; line-height:1.1; font-family:var(--ep-font-sans); }
.ep2 .frente-desc { font-size:.9375rem; color:var(--ep-text-muted); line-height:1.7; flex:1; }
.ep2 .frente-tags { display:flex; flex-wrap:wrap; gap:6px; }
.ep2 .frente-tag { padding:4px 10px; font:600 .65rem/1 var(--ep-font-mono); letter-spacing:.1em; text-transform:uppercase; background:rgba(255,255,255,.05); border:1px solid var(--ep-border); border-radius:var(--ep-r-sm); color:var(--ep-text-muted); }
.ep2 .frente-link { display:inline-flex; align-items:center; gap:8px; font:700 .7rem/1 var(--ep-font-sans); letter-spacing:.12em; text-transform:uppercase; color:var(--ep-text-brand); margin-top:auto; transition:gap var(--ep-dur) ease; }
.ep2 .frente-card:hover .frente-link { gap:12px; }

/* ── CS FLEX DESTAQUE ────────────────────────────────────────── */
.ep2 .section-csflex { padding:120px 0; background-color:#0d2303; background-image:radial-gradient(650px 420px at 78% 18%, rgba(117,114,185,.09), transparent 60%); border-top:1px solid var(--ep-border); border-bottom:1px solid var(--ep-border); }
.ep2 .csflex-inner { display:grid; grid-template-columns:1fr 1.2fr; gap:64px; align-items:center; }
@media(max-width:960px){.ep2 .csflex-inner{grid-template-columns:1fr;gap:56px;}}
.ep2 .csflex-left h2 { font-size:clamp(2rem,4vw,3.25rem); font-weight:900; letter-spacing:-.03em; line-height:1; margin:16px 0 24px; font-family:var(--ep-font-sans); }
.ep2 .csflex-left > p { font-size:1.0625rem; color:var(--ep-text-muted); line-height:1.7; margin:0 0 32px; }
.ep2 .csflex-is { display:flex; flex-direction:column; gap:10px; margin-bottom:36px; }
.ep2 .csflex-is-item { display:grid; grid-template-columns:20px 1fr; grid-template-rows:auto auto; column-gap:12px; row-gap:3px; padding:14px 18px; background:rgba(82,191,66,.04); border:1px solid rgba(82,191,66,.13); border-radius:var(--ep-r-md); }
.ep2 .csflex-is-item::before { content:'✓'; font:900 .8rem/1 var(--ep-font-sans); color:var(--ep-green-neon); grid-column:1; grid-row:span 2; align-self:start; padding-top:3px; }
.ep2 .csflex-is-item strong { grid-column:2; grid-row:1; display:block; font-size:.875rem; font-weight:700; color:var(--ep-text); font-family:var(--ep-font-sans); }
.ep2 .csflex-is-item span { grid-column:2; grid-row:2; font-size:.8rem; color:var(--ep-text-muted); line-height:1.55; }
.ep2 .csflex-framework { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:24px; }
@media(max-width:560px){.ep2 .csflex-framework{grid-template-columns:1fr;}}
.ep2 .csflex-col { padding:28px 24px; border:1px solid var(--ep-border-brand); border-radius:var(--ep-r-xl); background:rgba(82,191,66,.04); display:flex; flex-direction:column; gap:12px; }
.ep2 .csflex-col-tag { font:800 .65rem/1 var(--ep-font-mono); letter-spacing:.2em; text-transform:uppercase; color:var(--ep-green-neon); }
.ep2 .csflex-col h4 { font-size:1.125rem; font-weight:800; margin:0; line-height:1.2; font-family:var(--ep-font-sans); letter-spacing:-.01em; }
.ep2 .csflex-col p { font-size:.875rem; color:var(--ep-text-muted); line-height:1.65; margin:0; }
.ep2 .csflex-note { padding:18px 20px; background:var(--ep-bg-card); border:1px solid var(--ep-border); border-left:3px solid var(--ep-green-neon); border-radius:0 var(--ep-r-md) var(--ep-r-md) 0; font-size:.8125rem; color:var(--ep-text-muted); line-height:1.6; margin-bottom:20px; }
.ep2 .csflex-specs { display:flex; flex-wrap:wrap; gap:8px; }
.ep2 .csflex-spec { padding:6px 12px; font:600 .65rem/1 var(--ep-font-mono); letter-spacing:.1em; text-transform:uppercase; background:rgba(82,191,66,.08); border:1px solid var(--ep-border-brand); border-radius:var(--ep-r-sm); color:var(--ep-text-brand); }

/* ── DIGITAL COMMERCE ────────────────────────────────────────── */
.ep2 .section-dc { padding:120px 0; }
.ep2 .dc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
@media(max-width:900px){.ep2 .dc-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.ep2 .dc-grid{grid-template-columns:1fr;}}
.ep2 .dc-card { padding:36px 32px; background:var(--ep-bg-card); border:1px solid var(--ep-border); border-radius:var(--ep-r-xl); display:flex; flex-direction:column; gap:16px; transition:all var(--ep-dur) var(--ep-ease); }
.ep2 .dc-card:hover { border-color:var(--ep-border-brand); transform:translateY(-3px); box-shadow:var(--ep-glow-soft); }
.ep2 .dc-card--wide { grid-column:span 2; }
@media(max-width:560px){.ep2 .dc-card--wide{grid-column:span 1;}}
.ep2 .dc-num { font:800 .65rem/1 var(--ep-font-mono); letter-spacing:.2em; text-transform:uppercase; color:var(--ep-text-dim); }
.ep2 .dc-card h3 { font-size:1.125rem; font-weight:800; margin:0; line-height:1.25; font-family:var(--ep-font-sans); letter-spacing:-.01em; }
.ep2 .dc-card p { font-size:.875rem; color:var(--ep-text-muted); line-height:1.65; margin:0; flex:1; }
.ep2 .dc-link { display:inline-flex; align-items:center; gap:6px; font:700 .7rem/1 var(--ep-font-sans); letter-spacing:.12em; text-transform:uppercase; color:var(--ep-text-brand); margin-top:auto; transition:gap var(--ep-dur) ease; }
.ep2 .dc-card:hover .dc-link { gap:10px; }

/* ── OPERAÇÃO DIGITAL ────────────────────────────────────────── */
.ep2 .section-operacao { padding:120px 0; border-top:1px solid var(--ep-border); background:linear-gradient(180deg,transparent,rgba(82,191,66,.02),transparent); }
.ep2 .op-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
@media(max-width:1080px){.ep2 .op-grid{grid-template-columns:repeat(4,1fr);}}
@media(max-width:760px){.ep2 .op-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:480px){.ep2 .op-grid{grid-template-columns:repeat(2,1fr);}}
.ep2 .op-item { padding:24px 20px; background:var(--ep-bg-card); border:1px solid var(--ep-border); border-radius:var(--ep-r-lg); display:flex; flex-direction:column; gap:8px; transition:all var(--ep-dur) var(--ep-ease); }
.ep2 .op-item:hover { border-color:var(--ep-border-brand); background:rgba(82,191,66,.04); transform:translateY(-2px); }
.ep2 .op-num { font:700 .6rem/1 var(--ep-font-mono); letter-spacing:.2em; text-transform:uppercase; color:var(--ep-text-dim); }
.ep2 .op-item h4 { font-size:.9375rem; font-weight:700; margin:0; line-height:1.3; font-family:var(--ep-font-sans); }
.ep2 .op-item p { font-size:.8125rem; color:var(--ep-text-muted); line-height:1.5; margin:0; }

/* ── CASES ───────────────────────────────────────────────────── */
.ep2 .section-cases { padding:120px 0; background: #0d2303;}
.ep2 .cases-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; grid-template-rows:repeat(2,260px); gap:20px; }
@media(max-width:900px){.ep2 .cases-grid{grid-template-columns:1fr;grid-template-rows:none;}}
.ep2 .case-card { padding:32px; border-radius:var(--ep-r-xl); display:flex; flex-direction:column; justify-content:space-between; position:relative; overflow:hidden; border:1px solid var(--ep-border); transition:all var(--ep-dur) var(--ep-ease); cursor:pointer; background:var(--ep-bg-card); }
.ep2 .case-card:hover { transform:translateY(-3px); box-shadow:var(--ep-glow-soft); }
.ep2 .case-card--big { grid-row:span 2; background:linear-gradient(135deg,#15170f,#24261f); border-color:var(--ep-border-brand); }
.ep2 .case-card--big::before { content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(600px 400px at 80% 20%,rgba(82,191,66,.2),transparent 60%); }
.ep2 .case-card--b { background:#24261f; }
.ep2 .case-card--c { background:#1c1e16; }
.ep2 .case-card--d { background:linear-gradient(135deg,rgba(117,114,185,.12),rgba(101,97,125,.06)); }
.ep2 .case-card--e { background:#1c1e16; }
.ep2 .case-card .cat { font:700 10px/1 var(--ep-font-mono); color:var(--ep-text-brand); letter-spacing:.2em; text-transform:uppercase; }
.ep2 .case-card h3 { font-size:1.75rem; font-weight:800; margin:16px 0 0; letter-spacing:-.01em; font-family:var(--ep-font-sans); }
.ep2 .case-card--big h3 { font-size:2.5rem; }
.ep2 .case-card .metric { font-size:2rem; font-weight:900; letter-spacing:-.02em; background:var(--ep-gradient-brand); -webkit-background-clip:text; background-clip:text; color:transparent; font-family:var(--ep-font-sans); }
.ep2 .case-card--big .metric { font-size:4rem; line-height:1; }
.ep2 .case-card p { margin:8px 0 0; font-size:.875rem; color:var(--ep-text-muted); line-height:1.5; }

/* ── DEPOIMENTOS ─────────────────────────────────────────────── */
.ep2 .section-testi { padding:120px 0; border-top:1px solid var(--ep-border); }
.ep2 .testi-grid { display:grid; gap:20px; }
@media(min-width:760px){.ep2 .testi-grid{grid-template-columns:1fr 1fr;}}
.ep2 .testi-card { padding:36px 32px; background:var(--ep-bg-card); border:1px solid var(--ep-border); border-radius:var(--ep-r-xl); display:flex; flex-direction:column; gap:20px; transition:border-color var(--ep-dur) ease; position: relative;}
.ep2 .testi-card:hover { border-color:var(--ep-border-brand); }
.ep2 .testi-card .quote-mark { font-size:3rem; color:transparent; line-height:.6; font-family:Georgia,serif; }
.ep2 .testi-card blockquote { margin:0; font-size:.9375rem; line-height:1.7; color:var(--ep-text-muted); }
.ep2 .testi-who { display:flex; align-items:center; gap:12px; padding-top:20px; border-top:1px solid var(--ep-border); margin-top:auto; }
.ep2 .testi-logo { height:26px; width:auto; filter:brightness(0) invert(.7); }
.ep2 .testi-name b { font-size:.875rem; font-weight:700; }
.ep2 .testi-name small { display:block; font-size:.75rem; color:var(--ep-text-dim); margin-top:4px; font-family:var(--ep-font-mono); }

/* ── CREDENCIAIS + PLATAFORMAS ───────────────────────────────── */
.ep2 .section-credenciais { padding:100px 0; }
.ep2 .credenciais-inner { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
@media(max-width:900px){.ep2 .credenciais-inner{grid-template-columns:1fr;gap:56px;}}
.ep2 .credenciais-inner h3 { font-size:clamp(1.5rem,3vw,2.25rem); font-weight:800; letter-spacing:-.02em; margin:12px 0 16px; font-family:var(--ep-font-sans); }
.ep2 .section-credenciais.section-light .credenciais-inner h3 { color:#15170f; }
.ep2 .credenciais-inner > div > p { line-height:1.65; font-size:1rem; margin:0 0 28px; }
.ep2 .section-credenciais.section-light .credenciais-inner > div > p { color:#4a4d47; }
.ep2 .seals-grid { display:flex; flex-wrap:wrap; gap:10px; }
.ep2 .seals-grid img { height:auto; padding: 5px; max-height:55px; width:auto; border-radius:var(--ep-r-md); transition:opacity var(--ep-dur) ease; }
.ep2 .section-light .seals-grid img { filter:none; opacity:.9; }
.ep2 .section-light .seals-grid img:hover { opacity:1; }
.ep2 .plataformas-grid { display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.ep2 .plataformas-grid img { height:auto; width:auto; max-width:115px; transition:opacity var(--ep-dur) ease;max-height: 25px; }
.ep2 .section-light .plataformas-grid img { opacity:.6; }
.ep2 .section-light .plataformas-grid img:hover { opacity:1; }

/* ── QUEM SOMOS ──────────────────────────────────────────────── */
.ep2 .section-quem { padding:120px 0; border-top:1px solid var(--ep-border); background-image:radial-gradient(700px 450px at 5% 60%, rgba(117,114,185,.07), transparent 60%); }
.ep2 .quem-inner { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
@media(max-width:900px){.ep2 .quem-inner{grid-template-columns:1fr;gap:48px;}}
.ep2 .quem-inner h2 { font-size:clamp(2rem,4vw,3.25rem); font-weight:800; letter-spacing:-.02em; line-height:1.05; margin:16px 0 24px; font-family:var(--ep-font-sans); }
.ep2 .quem-inner > div > p { font-size:1rem; color:var(--ep-text-muted); line-height:1.7; margin:0 0 16px; }
.ep2 .quem-points { display:grid; gap:16px; }
.ep2 .quem-point { padding:24px 28px; background:var(--ep-bg-card); border:1px solid var(--ep-border); border-radius:var(--ep-r-lg); display:grid; grid-template-columns:44px 1fr; gap:16px; align-items:start; transition:border-color var(--ep-dur) ease; }
.ep2 .quem-point:hover { border-color:var(--ep-border-brand); }
.ep2 .qp-icon { width:44px; height:44px; border-radius:var(--ep-r-md); background:rgba(82,191,66,.1); border:1px solid var(--ep-border-brand); display:grid; place-items:center; font:800 .7rem/1 var(--ep-font-mono); color:var(--ep-green-neon); letter-spacing:.05em; }
.ep2 .quem-point h4 { margin:0 0 6px; font-size:.9375rem; font-weight:700; }
.ep2 .quem-point p { margin:0; font-size:.875rem; color:var(--ep-text-muted); line-height:1.55; }

/* ── FAQ ─────────────────────────────────────────────────────── */
.ep2 .section-faq { padding:100px 0; }
.ep2 .faq-list { display:grid; gap:10px; max-width:880px; margin:0 auto; }
.ep2 .faq-item { border-radius:var(--ep-r-lg); overflow:hidden; }
.ep2 .section-light .faq-item summary { background:#fff; border:1px solid rgba(0,0,0,.1); color:#15170f; border-radius:var(--ep-r-lg); }
.ep2 .section-light .faq-item details[open] summary { border-bottom-left-radius:0; border-bottom-right-radius:0; border-bottom:none; }
.ep2 .faq-item summary { padding:22px 28px; font:700 1rem/1.3 var(--ep-font-sans); letter-spacing:-.01em; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; transition:background var(--ep-dur) ease; }
.ep2 .faq-item summary::-webkit-details-marker { display:none; }
.ep2 .faq-item summary::after { content:'+'; font-size:1.5rem; font-weight:300; flex-shrink:0; color:var(--ep-green-neon); transition:transform var(--ep-dur) ease; }
.ep2 .faq-item details[open] summary::after { transform:rotate(45deg); }
.ep2 .faq-answer { padding:20px 28px 28px; font-size:.9375rem; line-height:1.7; }
.ep2 .section-light .faq-answer { background:#fff; border:1px solid rgba(0,0,0,.1); border-top:none; border-bottom-left-radius:var(--ep-r-lg); border-bottom-right-radius:var(--ep-r-lg); color:#4a4d47; }

/* ── CTA FINAL ───────────────────────────────────────────────── */
.ep2 .section-cta { padding:80px 0 120px; background-image:radial-gradient(700px 500px at 50% 100%, rgba(117,114,185,.07), transparent 65%); }
.ep2 .cta-box { padding:80px; border-radius:var(--ep-r-xl); text-align:center; background:linear-gradient(135deg,rgba(82,191,66,.1),rgba(0,157,98,.05),rgba(117,114,185,.06)); border:1px solid var(--ep-border-brand); position:relative; overflow:hidden; }
.ep2 .cta-box::before { content:''; position:absolute; inset:0; background-image:linear-gradient(rgba(82,191,66,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(82,191,66,.06) 1px,transparent 1px); background-size:40px 40px; mask-image:radial-gradient(circle at 50% 50%,#000,transparent 80%); -webkit-mask-image:radial-gradient(circle at 50% 50%,#000,transparent 80%); pointer-events:none; }
.ep2 .cta-box > * { position:relative; z-index:1; }
.ep2 .cta-box h2 { font-size:clamp(2rem,4.5vw,3.5rem); font-weight:900; letter-spacing:-.03em; line-height:1; margin:12px 0 20px; font-family:var(--ep-font-sans); }
.ep2 .cta-box p { font-size:1.1rem; color:var(--ep-text-muted); max-width:580px; margin:0 auto 40px; line-height:1.55; }
.ep2 .cta-row { display:inline-flex; gap:14px; flex-wrap:wrap; justify-content:center; }
@media(max-width:640px){.ep2 .cta-box{padding:48px 24px;}}

/* ── FOOTER ──────────────────────────────────────────────────── */
.ep2 .ep-footer { padding:80px 0 40px; border-top:1px solid var(--ep-border); background:var(--ep-bg); }
.ep2 .foot-grid { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:48px; }
@media(max-width:800px){.ep2 .foot-grid{grid-template-columns:1fr 1fr;gap:32px;}}
@media(max-width:480px){.ep2 .foot-grid{grid-template-columns:1fr;}}
.ep2 .foot-grid img { height:30px; margin-bottom:20px; }
.ep2 .foot-grid p { font-size:.875rem; color:var(--ep-text-muted); line-height:1.65; margin:0 0 16px; max-width:300px; }
.ep2 .foot-grid h5 { font:700 .7rem/1 var(--ep-font-sans); letter-spacing:.15em; text-transform:uppercase; color:var(--ep-text); margin:0 0 20px; }
.ep2 .foot-grid ul { display:grid; gap:10px; }
.ep2 .foot-grid a { font-size:.875rem; color:var(--ep-text-muted); }
.ep2 .foot-grid a:hover { color:var(--ep-text-brand); }
.ep2 .foot-btm { max-width:1280px; margin:40px auto 0; padding:28px 40px 0; border-top:1px solid var(--ep-border); display:flex; justify-content:space-between; align-items:center; font-size:.75rem; color:var(--ep-text-dim); flex-wrap:wrap; gap:12px; }
.ep2 .foot-btm a { color:var(--ep-text-brand); }

/* ── MOBILE ──────────────────────────────────────────────────── */
@media(max-width:760px) {
  .ep2 .hero { padding:70px 24px 90px; }
  .ep2 .ep-container { padding:0 24px; }
  .ep2 .sec-head { margin-bottom:40px; }
  .ep2 .hero-logos { gap:20px; }
  .ep2 .hero-logos img { height:20px; }
  .ep2 .hero h1 { margin-bottom:20px; }
  .ep2 .section-frentes,.ep2 .section-dc,.ep2 .section-operacao,.ep2 .section-cases,.ep2 .section-testi,.ep2 .section-quem,.ep2 .section-csflex { padding:80px 0; }
  .ep2 .section-stats,.ep2 .section-brands,.ep2 .section-credenciais,.ep2 .section-faq { padding:60px 0; }
}

/* ── ANIMATIONS ──────────────────────────────────────────────── */
@keyframes float { 0%,100%{transform:translateY(0px)} 50%{transform:translateY(-12px)} }
@keyframes gradientDrift { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }

/* ── HERO V2 ─────────────────────────────────────────────────── */
.ep2 .hero { text-align:center; }
.ep2 .hero-canvas { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; z-index:1; }
.ep2 .hero-inner { max-width:1100px; }
.ep2 .hero h1 { font-size:clamp(2rem,4.5vw,3.75rem); }

/* ── FRENTES V2 ──────────────────────────────────────────────── */
.ep2 .frentes-v2 { display:flex; flex-direction:column; gap:24px; }
.ep2 .frente-row2 { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
@media(max-width:880px){.ep2 .frente-row2{grid-template-columns:1fr;}}
.ep2 .frente-card--full { flex-direction:row; min-height:180px; align-items:center; gap:56px; padding:36px 48px; }
.ep2 .frente-card--full .frente-body { flex:1; min-width:0; }
.ep2 .frente-card--full .frente-visual { flex:0 0 260px; display:flex; align-items:center; justify-content:center; }
@media(max-width:880px){.ep2 .frente-card--full{flex-direction:column;} .ep2 .frente-card--full .frente-visual{display:none;}}
.ep2 .fmini-wrap { display:grid; grid-template-columns:1fr 48px 1fr; gap:8px; align-items:center; width:100%; }
.ep2 .fmini-col { display:flex; flex-direction:column; gap:6px; }
.ep2 .fmini-node { padding:7px 10px; font:700 .575rem/1.2 var(--ep-font-mono); letter-spacing:.06em; text-transform:uppercase; border:1px solid rgba(82,191,66,0.22); border-radius:6px; background:rgba(82,191,66,0.05); color:var(--ep-text-brand); text-align:center; }
.ep2 .fmini-center { display:flex; justify-content:center; }
.ep2 .fmini-core { width:48px; height:48px; border-radius:50%; background:var(--ep-gradient-diag); display:grid; place-items:center; font:900 .65rem/1 var(--ep-font-sans); color:#0b0c07; box-shadow:0 0 24px rgba(82,191,66,0.4); text-align:center; }

/* ── CS FLEX WHEEL ───────────────────────────────────────────── */
.ep2 .csflex-wheel { position:relative; width:100%; max-width:620px; margin:0 auto; }
.ep2 .csflex-wheel-svg { width:100%; height:auto; overflow:visible; }
/* segmentos — transição de entrada */
.ep2 .cfw-seg { fill:#173712;); stroke:rgba(82,191,66,0.22); stroke-width:1; transition:fill .25s ease, stroke .25s ease, opacity .5s ease, transform .55s cubic-bezier(.2,.85,.3,1); transform-box:view-box; transform-origin:280px 280px; transform:scale(.72); opacity:0; }
.ep2 .cfw-seg--lil { fill:rgba(20,18,52,0.95); stroke:rgba(117,114,185,0.28); }
.ep2 .cfw-seg:hover { fill:rgba(22,60,14,0.98); stroke:rgba(82,191,66,.6); }
.ep2 .cfw-seg--lil:hover { fill:rgba(36,32,88,0.98); stroke:rgba(117,114,185,.6); }
.ep2 .csflex-wheel.is-visible .cfw-seg { transform:scale(1); opacity:1; }
.ep2 .cfw-segs .cfw-seg:nth-child(1) { transition-delay:0s; }
.ep2 .cfw-segs .cfw-seg:nth-child(2) { transition-delay:.07s; }
.ep2 .cfw-segs .cfw-seg:nth-child(3) { transition-delay:.14s; }
.ep2 .cfw-segs .cfw-seg:nth-child(4) { transition-delay:.21s; }
.ep2 .cfw-segs .cfw-seg:nth-child(5) { transition-delay:.28s; }
.ep2 .cfw-segs .cfw-seg:nth-child(6) { transition-delay:.35s; }
.ep2 .cfw-segs .cfw-seg:nth-child(7) { transition-delay:.42s; }
.ep2 .cfw-segs .cfw-seg:nth-child(8) { transition-delay:.49s; }
/* labels */
.ep2 .cfw-label { fill:rgba(150,192,44,0.94); font-size:14px; font-weight:700; font-family:'JetBrains Mono',monospace; letter-spacing:.1em; pointer-events:none; text-transform:uppercase; }
.ep2 .cfw-label--lil { fill:rgba(177,174,210,0.94); }

/* ── OP DIGITAL HUB ──────────────────────────────────────────── */
.ep2 .op-hub-wrap { display:grid; grid-template-columns:1fr 480px; gap:64px; align-items:center; }
@media(max-width:1100px){.ep2 .op-hub-wrap{grid-template-columns:1fr;}}
.ep2 .op-hub { position:relative; width:480px; height:480px; flex-shrink:0; }
@media(max-width:1100px){.ep2 .op-hub{display:none;}}
.ep2 .op-hub-center { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:96px; height:96px; border-radius:50%; background:var(--ep-gradient-diag); display:grid; place-items:center; text-align:center; z-index:2; box-shadow:0 0 40px rgba(82,191,66,0.45),0 0 80px rgba(82,191,66,0.15); }
.ep2 .op-hub-center span { font:900 .575rem/1.3 var(--ep-font-sans); color:#0b0c07; letter-spacing:.04em; text-transform:uppercase; display:block; padding:0 6px; }
.ep2 .op-hub-ring { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); border-radius:50%; pointer-events:none; }
.ep2 .op-hub-ring--1 { width:204px; height:204px; border:1px solid rgba(82,191,66,0.12); }
.ep2 .op-hub-ring--2 { width:370px; height:370px; border:1px dashed rgba(82,191,66,0.07); }
.ep2 .op-spoke { position:absolute; top:50%; left:50%; width:80px; text-align:center; }
.ep2 .op-spoke-inner { padding:9px 6px; background:#15170f; border:1px solid rgba(82,191,66,0.18); border-radius:8px; transition:border-color .3s ease,background .3s ease; }
.ep2 .op-spoke-inner:hover { border-color:rgba(82,191,66,0.5); background:rgba(82,191,66,0.07); }
.ep2 .op-spoke-label { font:700 .575rem/1.3 var(--ep-font-sans); color:var(--ep-text-muted); letter-spacing:.02em; }
.ep2 .op-hub .op-spoke:nth-child(4)  { transform:translate(-50%,-50%) rotate(-90deg)  translateY(-175px) rotate(90deg);  }
.ep2 .op-hub .op-spoke:nth-child(5)  { transform:translate(-50%,-50%) rotate(-54deg)  translateY(-175px) rotate(54deg);  }
.ep2 .op-hub .op-spoke:nth-child(6)  { transform:translate(-50%,-50%) rotate(-18deg)  translateY(-175px) rotate(18deg);  }
.ep2 .op-hub .op-spoke:nth-child(7)  { transform:translate(-50%,-50%) rotate(18deg)   translateY(-175px) rotate(-18deg); }
.ep2 .op-hub .op-spoke:nth-child(8)  { transform:translate(-50%,-50%) rotate(54deg)   translateY(-175px) rotate(-54deg); }
.ep2 .op-hub .op-spoke:nth-child(9)  { transform:translate(-50%,-50%) rotate(90deg)   translateY(-175px) rotate(-90deg); }
.ep2 .op-hub .op-spoke:nth-child(10) { transform:translate(-50%,-50%) rotate(126deg)  translateY(-175px) rotate(-126deg); }
.ep2 .op-hub .op-spoke:nth-child(11) { transform:translate(-50%,-50%) rotate(162deg)  translateY(-175px) rotate(-162deg); }
.ep2 .op-hub .op-spoke:nth-child(12) { transform:translate(-50%,-50%) rotate(198deg)  translateY(-175px) rotate(-198deg); }
.ep2 .op-hub .op-spoke:nth-child(13) { transform:translate(-50%,-50%) rotate(234deg)  translateY(-175px) rotate(-234deg); }

/* ── CASES V2 ─────────────────────────────────────────────────── */
.ep2 .case-card--img { background-size:cover !important; background-position:center !important; border-color:#123406!important; }
.ep2 .case-card--img::after { content:''; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,0.9) 0%,rgba(0,0,0,0.5) 55%,rgba(0,0,0,0.15) 100%); z-index:0; border-radius:var(--ep-r-xl); }
.ep2 .case-card--img > * { position:relative; z-index:1; }

/* ── DEPOIMENTOS LIGHT ───────────────────────────────────────── */
.ep2 .section-testi.section-light { border-top:none; }
.ep2 .section-testi.section-light .testi-card { background:#fff; border-color:rgba(0,0,0,0.08); }
.ep2 .section-testi.section-light .testi-card:hover { border-color:var(--ep-lilac-border); }
.ep2 .section-testi.section-light .testi-card blockquote { color:#4a4d47; }
.ep2 .section-testi.section-light .testi-who { border-top-color:rgba(0,0,0,0.08); }
.ep2 .section-testi.section-light .testi-logo { filter:grayscale(1); opacity:.55; }
.ep2 .section-testi.section-light .testi-name b { color:#15170f; }
.ep2 .section-testi.section-light .quote-mark { font-size:5.5rem; line-height:.45; color: #0d2303; height:8px; position: absolute; top: 10px; left: 0px;}
.ep2 .section-testi.section-light .quote-mark::before {content: "\201C";}

/* ── DC LIGHT ─────────────────────────────────────────────────── */
.ep2 .section-dc.section-light .dc-card { background:#fff; border-color:rgba(0,0,0,0.08); }
.ep2 .section-dc.section-light .dc-card:hover { border-color:rgba(67,171,73,0.4); box-shadow:0 8px 24px rgba(0,0,0,0.08); }
.ep2 .section-dc.section-light .dc-card h3 { color:#15170f; }
.ep2 .section-dc.section-light .dc-card p { color:#4a4d47; }
.ep2 .section-dc.section-light .dc-num { color:#8b8f87; }
.ep2 .section-dc.section-light .dc-link { color:#43ab49; }
.ep2 .dc-case-img { border-radius:var(--ep-r-md); overflow:hidden; height:150px; margin-bottom:12px; }
.ep2 .dc-case-img img { width:100%; height:100%; object-fit:cover; }

/* ── CTA PROOF ────────────────────────────────────────────────── */
.ep2 .cta-proof { display:flex; gap:40px; justify-content:center; flex-wrap:wrap; margin-bottom:36px; }
.ep2 .cta-proof-item { text-align:center; }
.ep2 .cta-proof-item strong { display:block; font-size:1.5rem; font-family:var(--ep-font-sans); font-weight:900; letter-spacing:-.02em; margin-bottom:5px; background:var(--ep-gradient-brand); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ep2 .cta-proof-item span { font:700 .65rem/1 var(--ep-font-mono); letter-spacing:.15em; text-transform:uppercase; color:var(--ep-text-dim); }
