/* =============================================================================
   Etapa 5 — Conhecimento, Blog, Cases e Materiais (25/09/2026)
   Segunda rodada em 28/09/2026: Conhecimento sem banner e com foto ao fundo,
   banner do Blog com cabos de dados, post em duas metades e corpo central,
   foto no banner de Cases, faixas compactas de "Continue lendo" e "Outros
   cases", e modo claro no blog, nos posts e nos cases (fim do arquivo).

   Mesma família das etapas 3 e 4: fundo Black, tipografia da 09-etapa3.css,
   reveal/scene de internas.js, grifo e brilho de efeitos.js. A identidade da
   área vem das faixas diagonais das capas gráficas da Home, com uma cor por
   área: Intell Green no blog, Evo Green nos cases, Soft Green nos materiais.

   Títulos: 09-etapa3 e 06-internas aplicam regras a todo h2/h3 de main, então
   os títulos dos componentes usam ".con main ..." para ganhar especificidade.
   ========================================================================== */

.con { background: var(--cor-fundo); }
.con-filtro { position: absolute; width: 0; height: 0; }
.con main .con-rotulo { margin: 0 0 clamp(24px, 2.2vw, 36px); font-size: inherit; line-height: 1; max-width: none; text-transform: none; }
.con main .con-rotulo .rotulo { margin: 0; }
.con-vazio { margin: 0; padding: 40px; border: 1px dashed #b2b5c055; font-size: 19px; color: #dfe2e6; }

/* ------------------------------------------------------------------ banner */
.con-hero {
  --faixa-1: var(--cor-destaque); --faixa-2: #66a687;
  position: relative; isolation: isolate; overflow: clip;
  padding: 150px 0 clamp(70px, 6vw, 110px);
  background: radial-gradient(ellipse 45% 80% at 85% 20%, #03733d33, transparent 70%), var(--cor-fundo);
}
.con-hero--case { --faixa-1: #03733d; --faixa-2: var(--cor-destaque); }
.con-hero--material { --faixa-1: #66a687; --faixa-2: var(--cor-destaque); }
.con-hero__inner { position: relative; z-index: 1; }
.con main .con-hero h1 { max-width: 15ch; font-size: clamp(56px, 5.4vw, 104px); }
.con-hero__lead { margin: 28px 0 0; max-width: 720px; font-size: clamp(18px, 1.3vw, 23px); line-height: 1.6; color: #dfe2e6; }

/* faixas diagonais grandes, à direita; entram deslizando e andam com a rolagem */
.con-hero__faixas { position: absolute; z-index: 0; inset: 0 0 0 auto; width: min(46%, 820px); pointer-events: none; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 35%); mask-image: linear-gradient(90deg, transparent, #000 35%); }
.con-hero__faixas i {
  position: absolute; top: -40%; height: 190%; left: 30%; width: 22%;
  background: var(--faixa-1); opacity: .5; transform: rotate(28deg) translateY(calc((var(--scene-progress, .5) - .5) * -80px));
}
.con-hero__faixas i:nth-child(2) { left: 60%; width: 7%; background: var(--faixa-2); opacity: .45; }
.con-hero__faixas i:nth-child(3) { left: 74%; width: 2.5%; background: #b2b5c0; opacity: .4; }
.con-hero__faixas i:nth-child(4) { left: 86%; width: 12%; background: var(--faixa-1); opacity: .16; }
@media (prefers-reduced-motion: no-preference) {
  .ip-motion .con-hero__faixas i { animation: con-faixa-entra 1.4s cubic-bezier(.2, .7, .2, 1) both; animation-delay: calc(var(--n, 0) * .12s + .2s); }
  .ip-motion .con-hero__faixas i:nth-child(2) { --n: 1; }
  .ip-motion .con-hero__faixas i:nth-child(3) { --n: 2; }
  .ip-motion .con-hero__faixas i:nth-child(4) { --n: 3; }
}
@keyframes con-faixa-entra { from { translate: 60% 0; opacity: 0; } }

/* filtros do blog */
.con-filtros { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 40px; }
.con-filtros a {
  padding: 9px 16px; border: 1px solid #b2b5c055; border-radius: 40px;
  font-size: 14px; font-weight: 600; color: #dfe2e6; text-decoration: none;
  transition: border-color .25s, color .25s, background .25s;
}
.con-filtros a:hover { border-color: var(--cor-destaque); color: #fff; }
.con-filtros a[aria-current="page"] { background: var(--cor-destaque); border-color: var(--cor-destaque); color: var(--cor-fundo); }

/* ------------------------------------------------------------- capa gráfica */
.con-capa { position: relative; display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; overflow: hidden; background: #252d28; }
.con-capa--grafica { --faixa-1: var(--cor-destaque); --faixa-2: #66a687; isolation: isolate; background: linear-gradient(140deg, var(--cor-fundo), #66a68744); }
.con-capa--case { --faixa-1: #03733d; --faixa-2: var(--cor-destaque); background: linear-gradient(140deg, #1a1d20, #03733d66); }
.con-capa--material { --faixa-1: #66a687; --faixa-2: var(--cor-destaque); background: linear-gradient(140deg, var(--cor-fundo), #b2b5c033); }
.con-capa--grafica b { position: absolute; z-index: 1; left: 17px; bottom: 15px; font: 700 18px/1 var(--fonte-titulo); letter-spacing: .1em; color: #dfe2e6; max-width: 80%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.con-capa--grafica i {
  position: absolute; top: -45%; height: 180%; width: 24%;
  left: calc(30% + var(--capa, 0) * 4%);
  background: var(--faixa-1); opacity: .8; transform: rotate(calc(32deg - var(--capa, 0) * 9deg));
  transition: transform .6s cubic-bezier(.2, .7, .2, 1);
}
.con-capa--grafica i:nth-of-type(2) { left: 68%; width: 7%; background: var(--faixa-2); opacity: .7; }
.con-capa--grafica i:nth-of-type(3) { left: 82%; width: 3%; background: #b2b5c0; opacity: .7; }

/* ------------------------------------------------------------------ cartões */
.con-cards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(22px, 2.2vw, 40px); }
.con-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.con-card__area {
  position: relative; isolation: isolate; display: flex; flex-direction: column; height: 100%;
  padding: 12px; margin: -12px; color: #fff; text-decoration: none;
  border: 1px solid transparent; border-radius: 4px;
  transition: border-color .35s, box-shadow .35s, transform .35s;
}
.con-card__area::after {
  content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; opacity: 0;
  background: radial-gradient(320px circle at var(--mx, 50%) var(--my, 0%), rgb(var(--cor-destaque-rgb) / .094), transparent 70%);
  transition: opacity .35s;
}
.con-card__area:is(:hover, :focus-visible) { color: #fff; border-color: rgb(var(--cor-destaque-rgb) / .467); box-shadow: 0 0 22px rgb(var(--cor-destaque-rgb) / .149); }
.con-card__area:hover::after { opacity: 1; }
.con-card__area:hover .con-capa--grafica i { transform: rotate(calc(42deg - var(--capa, 0) * 9deg)) translateY(-6%); }
.con-card .con-capa { flex: none; margin-bottom: 18px; }
.con-card__meta { font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: #b2b5c0; }
.con main .con-card__titulo { margin: 12px 0 12px; max-width: none; font-size: clamp(24px, 1.7vw, 31px); line-height: 1.08; }
.con-card__resumo { margin: 0 0 18px; font-size: 16px; line-height: 1.6; color: #c9ccd2; }
.con-card__acao { margin-top: auto; padding-top: 6px; font-size: 15px; font-weight: 700; color: var(--cor-destaque); }
.con-card__acao span { display: inline-block; transition: transform .3s; }
.con-card__area:hover .con-card__acao span, .con-destaque__area:hover .con-card__acao span { transform: translateX(5px); }

/* --------------------------------------------------------------------- blog */
.con-lista { padding-block: clamp(40px, 4vw, 70px) clamp(90px, 8vw, 150px); }
.con-destaque { margin-bottom: clamp(56px, 5vw, 90px); }
.con-destaque__area {
  position: relative; isolation: isolate; display: grid; grid-template-columns: 1.25fr 1fr; align-items: center; gap: clamp(30px, 4vw, 70px);
  padding: 16px; margin: -16px; color: #fff; text-decoration: none;
  border: 1px solid transparent; border-radius: 4px;
  transition: border-color .35s, box-shadow .35s;
}
/* mesmo contorno verde dos cartões, com o brilho maior pelo tamanho */
.con-destaque__area::after {
  content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; opacity: 0;
  background: radial-gradient(640px circle at 50% 0%, rgb(var(--cor-destaque-rgb) / .094), transparent 70%);
  transition: opacity .35s;
}
.con-destaque__area:is(:hover, :focus-visible) { color: #fff; border-color: rgb(var(--cor-destaque-rgb) / .467); box-shadow: 0 0 22px rgb(var(--cor-destaque-rgb) / .149); }
.con-destaque__area:hover::after { opacity: 1; }
.con-destaque__capa.con-capa { aspect-ratio: 16 / 9; }
.con-destaque__area:hover .con-capa--grafica i { transform: rotate(calc(42deg - var(--capa, 0) * 9deg)) translateY(-6%); }
.con main .con-destaque h2 { margin: 16px 0 20px; max-width: none; font-size: clamp(38px, 3.4vw, 64px); line-height: 1.02; }
.con-destaque p { margin: 0 0 26px; font-size: 18px; line-height: 1.65; color: #dfe2e6; }
.con-paginas { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 60px; padding-top: 24px; border-top: 1px solid #b2b5c033; font-size: 15px; color: #b2b5c0; }
.con-paginas a { font-weight: 700; color: var(--cor-destaque); text-decoration: none; }

/* ------------------------------------------------------------ Conhecimento */
.con-portas { padding-block: clamp(20px, 2vw, 40px) clamp(90px, 8vw, 140px); }
.con-portas__grade { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 28px); }
.con-porta { --cor: var(--cor-destaque); }
.con-porta--cases { --cor: #03733d; }
.con-porta--materiais { --cor: #66a687; }
.con-porta a {
  position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; height: 100%;
  min-height: clamp(440px, 31vw, 540px); padding: clamp(30px, 2.8vw, 48px);
  color: #fff; text-decoration: none;
  background: linear-gradient(170deg, #2a2e33, #1c1f22 70%);
  border: 1px solid #b2b5c026;
  transition: transform .45s cubic-bezier(.2, .7, .2, 1), border-color .35s;
}
.con-porta a::before { content: ""; position: absolute; left: 0; top: 0; right: 0; height: 4px; background: var(--cor); box-shadow: 0 0 18px color-mix(in srgb, var(--cor) 70%, transparent); }
.con-porta a::after {
  content: ""; position: absolute; inset: 0; z-index: -1; opacity: 0;
  background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 0%), color-mix(in srgb, var(--cor) 24%, transparent), transparent 70%);
  transition: opacity .35s;
}
.con-porta a:hover { color: #fff; transform: translateY(-6px); border-color: color-mix(in srgb, var(--cor) 60%, transparent); }
.con-porta a:hover::after { opacity: 1; }
.con-porta__num { font: 700 15px/1 var(--fonte-titulo); letter-spacing: .12em; color: #b2b5c0; }
.con main .con-porta h2 { margin: auto 0 14px; font-size: clamp(56px, 5vw, 96px); line-height: .95; max-width: none; }
.con-porta p { margin: 0 0 26px; font-size: clamp(17px, 1.15vw, 20px); line-height: 1.55; color: #dfe2e6; }
.con-porta__total { font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--cor-destaque); }
.con-porta__ultimo { display: block; margin-top: 18px; padding-top: 18px; border-top: 1px solid #b2b5c026; font-size: 15px; line-height: 1.45; color: #fff; }
.con-porta__ultimo small { display: block; margin-bottom: 6px; font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #8c919b; }
.con-porta__ir { margin-top: 24px; font-weight: 700; color: var(--cor-destaque); }
.con-recentes { padding-block: clamp(80px, 7vw, 130px); border-top: 1px solid #b2b5c01a; }
.con-relacionados { padding-block: clamp(34px, 3vw, 52px); border-top: 1px solid #b2b5c01a; }
.con main .con-relacionados .con-rotulo { margin-bottom: 18px; }

/* --------------------------------------------------------------------- post */
.con-artigo__cabeca { padding: 140px 0 clamp(50px, 5vw, 80px); background: radial-gradient(ellipse 45% 90% at 90% 0%, #03733d2e, transparent 70%); }
.con-artigo__metades { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(40px, 5vw, 90px); }
.con-artigo__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; margin: 0 0 26px; font-size: 14px; color: #b2b5c0; }
.con-artigo__meta a { padding: 6px 12px; border: 1px solid rgb(var(--cor-destaque-rgb) / .467); border-radius: 30px; font-weight: 700; color: var(--cor-destaque); text-decoration: none; }
.con-artigo__meta a:hover { background: var(--cor-destaque); color: var(--cor-fundo); }
.con-artigo__meta > * + *:not(a)::before { content: "·"; margin-right: 18px; color: #66a687; }
.con main .con-artigo h1 { max-width: none; font-size: clamp(40px, 3.5vw, 70px); }
.con-artigo__lead { margin: 28px 0 0; max-width: 820px; font-size: clamp(19px, 1.4vw, 24px); line-height: 1.6; color: #dfe2e6; }
.con-artigo__aviso { display: inline-block; margin: 28px 0 0; padding: 8px 14px; border: 1px dashed #b2b5c077; font-size: 14px; color: #b2b5c0; }
.con-artigo__autor { display: flex; align-items: center; gap: 14px; margin: 34px 0 0; font-size: 15px; color: #b2b5c0; }
.con-artigo__autor strong { color: #fff; }
.con-artigo__avatar { flex: none; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #2c3136; border: 1px solid rgb(var(--cor-destaque-rgb) / .4); font: 700 20px/1 var(--fonte-titulo); color: var(--cor-destaque); overflow: hidden; }
.con-artigo__avatar img { width: 100%; height: 100%; object-fit: cover; }
.con-artigo__avatar--marca { background: #16181b; color: #fff; }
.con-artigo__avatar--marca svg { width: auto; height: 24px; }
.con-artigo__capa { margin: 0; }
.con-artigo__capa .con-capa { aspect-ratio: 4 / 3; box-shadow: 0 30px 70px #0006; }
/* corpo centralizado, até 1170px (780px + 50%); índice e compartilhar acima */
.con-artigo__grade { max-width: 1170px; margin-inline: auto; padding-bottom: clamp(80px, 7vw, 130px); }
.con-artigo__lado { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 26px 60px; margin-bottom: clamp(40px, 4vw, 64px); padding-bottom: 28px; border-bottom: 1px solid #b2b5c026; }
.con-indice { flex: 1 1 520px; }
.con-indice ol { list-style: none; display: flex; flex-wrap: wrap; gap: 8px 10px; margin: 14px 0 0; padding: 0; }
.con-indice a { display: block; padding: 7px 14px; border: 1px solid #b2b5c040; border-radius: 30px; font-size: 14px; line-height: 1.3; color: #c9ccd2; text-decoration: none; transition: color .2s, border-color .2s; }
.con-indice a:hover { color: #fff; border-color: var(--cor-destaque); }
.con-compartilhar { flex: none; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; max-width: 200px; margin-left: auto; }
.con-artigo__corpo p { max-width: none; }
.con-compartilhar .rotulo { flex-basis: 100%; margin-bottom: 8px; }
.con-compartilhar a, .con-compartilhar button {
  position: relative; display: grid; place-items: center; width: 44px; height: 44px; padding: 0;
  border: 1px solid #b2b5c055; border-radius: 50%; background: none; color: #fff; cursor: pointer;
  transition: border-color .25s, color .25s;
}
.con-compartilhar a:hover, .con-compartilhar button:hover { border-color: var(--cor-destaque); color: var(--cor-destaque); }
.con-compartilhar svg { width: 18px; height: 18px; }
.con-compartilhar__ok { position: absolute; left: 54px; white-space: nowrap; font-size: 13px; color: var(--cor-destaque); }

/* tipografia de leitura (post, atos do case e descrição do material) */
.con-prosa { font-size: clamp(18px, 1.15vw, 20px); line-height: 1.75; color: #dfe2e6; }
.con-prosa > * { margin: 0 0 1.2em; }
.con-prosa > :last-child { margin-bottom: 0; }
.con-prosa strong { color: #fff; }
.con-prosa a:not(.ip-button) { color: var(--cor-destaque); text-decoration-thickness: 1px; text-underline-offset: 3px; }
.con main .con-prosa h2 { margin: 1.8em 0 .6em; max-width: none; font-size: clamp(32px, 2.4vw, 46px); line-height: 1.05; scroll-margin-top: 120px; }
.con main .con-prosa h3 { margin: 1.6em 0 .5em; font-size: clamp(24px, 1.7vw, 30px); line-height: 1.1; scroll-margin-top: 120px; }
.con-prosa ul, .con-prosa ol { padding-left: 0; list-style: none; }
.con-prosa li { position: relative; padding-left: 28px; margin-bottom: .5em; }
.con-prosa ul li::before { content: ""; position: absolute; left: 4px; top: .72em; width: 9px; height: 9px; background: var(--cor-destaque); transform: rotate(45deg); }
.con-prosa ol { counter-reset: prosa; }
.con-prosa ol li { counter-increment: prosa; }
.con-prosa ol li::before { content: counter(prosa, decimal-leading-zero); position: absolute; left: 0; font: 700 15px/1.9 var(--fonte-titulo); color: var(--cor-destaque); }
.con-prosa blockquote { margin: 1.6em 0; padding: 4px 0 4px 28px; border-left: 3px solid var(--cor-destaque); font-size: 1.3em; line-height: 1.45; color: #fff; }
.con-prosa blockquote footer { margin-top: 12px; font-size: 15px; color: #b2b5c0; }
.con-prosa figure { margin: 1.8em 0; }
.con-prosa figure img { display: block; width: 100%; height: auto; }
.con-prosa figcaption { margin-top: 10px; font-size: 14px; color: #b2b5c0; }
.con-prosa table { width: 100%; border-collapse: collapse; font-size: 16px; }
.con-prosa th, .con-prosa td { padding: 12px 14px; border-bottom: 1px solid #b2b5c033; text-align: left; }
.con-prosa th { color: #fff; }

/* blocos próprios da Intellevo */
.bloco-numeros { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); margin: 2em 0 !important; border-top: 1px solid rgb(var(--cor-destaque-rgb) / .4); }
.bloco-numeros__item { padding: 22px 20px 6px 0; }
.bloco-numeros__item + .bloco-numeros__item { padding-left: 20px; border-left: 1px solid #b2b5c026; }
.bloco-numeros strong { display: block; font: 700 clamp(44px, 3.6vw, 64px)/1 var(--fonte-titulo); color: #fff; }
.bloco-numeros span { display: block; margin-top: 8px; font-size: 14px; line-height: 1.4; letter-spacing: .06em; text-transform: uppercase; color: #b2b5c0; }
.bloco-chamada {
  position: relative; isolation: isolate; overflow: hidden; margin: 2.2em 0 !important; padding: clamp(28px, 3vw, 44px);
  background: linear-gradient(100deg, #03733d, #0c4a2e 55%, #16241d 95%); border: 1px solid #66a68766;
}
.bloco-chamada::after { content: ""; position: absolute; inset: 0; z-index: -1; opacity: 0; background: radial-gradient(380px circle at var(--mx, 50%) var(--my, 50%), rgb(var(--cor-destaque-rgb) / .188), transparent 70%); transition: opacity .35s; }
.bloco-chamada:hover::after { opacity: 1; }
.con main .bloco-chamada__titulo { margin: 0 0 10px; font: 700 clamp(28px, 2.2vw, 40px)/1.05 var(--fonte-titulo); text-transform: uppercase; color: #fff; }
.bloco-chamada p { margin: 0 0 22px; font-size: 17px; line-height: 1.6; color: #e6e8eb; }
.bloco-chamada .ip-button { text-decoration: none; }
.bloco-depoimento { margin: 2.2em 0 !important; padding: 0 0 0 28px; border-left: 3px solid var(--cor-destaque); }
.bloco-depoimento blockquote { margin: 0; padding: 0; border: 0; font-size: 1.3em; color: #fff; }
.bloco-depoimento figcaption { margin-top: 14px; font-size: 15px; color: #b2b5c0; }
.bloco-depoimento figcaption strong { display: block; color: #fff; }
.bloco-depoimento .con-video { margin-top: 24px; }

/* -------------------------------------------------------------------- cases */
.con-casos { padding-block: clamp(30px, 3vw, 50px) clamp(90px, 8vw, 140px); }
.con-casos__lista { list-style: none; margin: 0; padding: 0; border-top: 1px solid #b2b5c033; }
.con-caso a {
  position: relative; isolation: isolate; display: grid; grid-template-columns: 60px minmax(0, .9fr) minmax(0, 1.3fr) minmax(0, 1fr) 40px; align-items: center; gap: clamp(20px, 2.4vw, 44px);
  padding: clamp(34px, 3.4vw, 56px) 0; color: #fff; text-decoration: none; border-bottom: 1px solid #b2b5c033;
}
.con-caso a::before { content: ""; position: absolute; inset: 0 calc(var(--gutter) * -1); z-index: -1; opacity: 0; background: radial-gradient(520px circle at var(--mx, 50%) var(--my, 50%), #03733d44, transparent 70%); transition: opacity .35s; }
.con-caso a:hover { color: #fff; }
.con-caso a:hover::before { opacity: 1; }
.con-caso__num { align-self: start; font: 700 15px/1 var(--fonte-titulo); letter-spacing: .12em; color: #66a687; }
.con-caso__cliente strong { display: block; font: 700 clamp(42px, 3.8vw, 72px)/.95 var(--fonte-titulo); text-transform: uppercase; color: transparent; -webkit-text-stroke: 1.5px var(--cor-destaque); transition: color .35s; }
.con-caso a:hover .con-caso__cliente strong { color: var(--cor-destaque); }
.con-caso__cliente span { display: block; margin-top: 14px; font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: #b2b5c0; }
.con main .con-caso h2 { margin: 0 0 14px; max-width: none; font-size: clamp(26px, 2vw, 38px); line-height: 1.05; }
.con-caso p { margin: 0; font-size: 16px; line-height: 1.6; color: #c9ccd2; }
.con-caso__numeros { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.con-caso__numeros li { display: flex; align-items: baseline; gap: 12px; }
.con-caso__numeros strong { flex: none; min-width: 4.2em; font: 700 28px/1 var(--fonte-titulo); color: #fff; }
.con-caso__numeros span { font-size: 14px; line-height: 1.35; color: #b2b5c0; }
.con-caso__ir { font-size: 30px; color: var(--cor-destaque); transition: transform .3s; }
.con-caso a:hover .con-caso__ir { transform: translateX(6px); }

/* faixa do material (em Cases e no case) */
.con-faixa-material { padding-block: clamp(70px, 6vw, 110px); background: linear-gradient(100deg, #1a1d20, var(--cor-fundo) 60%); border-block: 1px solid #b2b5c01a; overflow: clip; }
.con-faixa-material__grade { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: clamp(40px, 6vw, 110px); }
.con-faixa-material__titulo { margin: 0 0 14px; max-width: 26ch; font: 700 clamp(32px, 2.6vw, 50px)/1.02 var(--fonte-titulo); text-transform: uppercase; color: #fff; }
.con-faixa-material p:not([class]) { margin: 0 0 28px; max-width: 640px; font-size: 18px; line-height: 1.6; color: #dfe2e6; }
.con-faixa-material .ip-button { text-decoration: none; }

/* --------------------------------------------------------------------- case */
.con-case-hero { position: relative; isolation: isolate; overflow: clip; padding: 150px 0 clamp(60px, 5vw, 90px); background: radial-gradient(ellipse 50% 80% at 80% 10%, #03733d40, transparent 70%), var(--cor-fundo); }
.con-case-hero__cliente {
  position: absolute; z-index: -1; right: -2%; bottom: -.12em; white-space: nowrap; pointer-events: none;
  font: 700 clamp(160px, 20vw, 400px)/.8 var(--fonte-titulo); text-transform: uppercase; letter-spacing: -.02em;
  color: transparent; -webkit-text-stroke: 1px #66a68733;
  transform: translateX(calc((var(--scene-progress, .5) - .5) * -120px));
}
.con-case-hero__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin: 0 0 24px; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #b2b5c0; }
.con-case-hero__meta span { padding: 6px 12px; background: var(--cor-destaque); color: var(--cor-fundo); letter-spacing: .1em; }
.con main .con-case-hero h1, .con main .con-mat h1 { max-width: 20ch; font-size: clamp(46px, 4.4vw, 86px); }
.con-case-hero__lead { margin: 28px 0 0; max-width: 860px; font-size: clamp(19px, 1.4vw, 24px); line-height: 1.6; color: #dfe2e6; }

.con-case-numeros { padding-block: 0 clamp(70px, 6vw, 110px); }
.con-case-numeros ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid rgb(var(--cor-destaque-rgb) / .4); }
.con-case-numeros li { padding: 30px 24px 26px 0; border-bottom: 1px solid #b2b5c01f; }
.con-case-numeros li:not(:nth-child(4n + 1)) { padding-left: 24px; border-left: 1px solid #b2b5c01f; }
.con-case-numeros strong { display: block; font: 700 clamp(44px, 3.8vw, 72px)/1 var(--fonte-titulo); color: #fff; font-variant-numeric: tabular-nums; }
.con-case-numeros strong.con-contado { animation: con-numero-acende 1.4s ease; }
@keyframes con-numero-acende { 0% { color: var(--cor-destaque); text-shadow: 0 0 26px rgb(var(--cor-destaque-rgb) / .6); } 100% { color: #fff; text-shadow: none; } }
.con-case-numeros span { display: block; margin-top: 10px; font-size: 14px; line-height: 1.4; letter-spacing: .06em; text-transform: uppercase; color: #b2b5c0; }

/* três atos: nome fixo à esquerda, texto à direita, fio que acende na rolagem */
.con-atos { position: relative; padding-block: 0 clamp(80px, 7vw, 120px); }
.con-ato { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(40px, 6vw, 120px); padding-block: clamp(40px, 3.6vw, 64px); border-top: 1px solid #b2b5c026; }
.con-ato__texto { max-width: 780px; }
.con main .con-ato__nome { position: sticky; top: 130px; align-self: start; margin: 0; max-width: none; font-size: clamp(40px, 3.6vw, 68px); line-height: .98; }
.con-ato__nome span { display: block; margin-bottom: 14px; font-size: 15px; letter-spacing: .12em; color: var(--cor-destaque); }
.con-ato--resultado .con-ato__nome { color: var(--cor-destaque); }

/* voz do cliente */
.con-case-voz { padding-block: clamp(80px, 7vw, 130px); background: linear-gradient(180deg, #1a1d20, var(--cor-fundo)); border-top: 1px solid #b2b5c01a; }
.con-case-voz__citacao { position: relative; margin: 0 0 clamp(50px, 5vw, 80px); padding-left: clamp(60px, 6vw, 120px); max-width: 1320px; }
.con-case-voz__citacao::before { content: "\201C"; position: absolute; left: 0; top: -.08em; font: 700 clamp(120px, 11vw, 200px)/1 var(--fonte-texto); color: var(--cor-destaque); }
.con-case-voz blockquote { margin: 0; padding: 0; border: 0; }
.con-case-voz blockquote p { margin: 0; font: 500 clamp(24px, 2vw, 38px)/1.4 var(--fonte-texto); color: #fff; }
.con-case-voz figcaption { margin-top: 26px; font-size: 16px; color: #b2b5c0; }
.con-case-voz figcaption strong { display: block; font-size: 18px; color: #fff; }
.con-case-voz__videos { display: grid; gap: clamp(18px, 2vw, 32px); }
.con-case-voz__videos--2 { grid-template-columns: 1fr 1fr; }

/* vídeo em fachada */
.con-video { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 9; background: #16181b; color: #fff; text-decoration: none; border: 1px solid #b2b5c033; }
.con-video img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.4) brightness(.72); transition: transform .6s cubic-bezier(.2, .7, .2, 1), filter .4s; }
.con-video::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgb(var(--cor-fundo-rgb) / .902), transparent 55%); pointer-events: none; }
.con-video:hover img { transform: scale(1.04); filter: grayscale(0) brightness(.8); }
.con-video__play {
  position: absolute; z-index: 1; left: 50%; top: 45%; display: grid; place-items: center; width: 78px; height: 78px;
  translate: -50% -50%; border-radius: 50%; background: var(--cor-destaque); color: var(--cor-fundo);
  box-shadow: 0 0 0 10px rgb(var(--cor-destaque-rgb) / .149), 0 12px 40px #0008; transition: scale .3s, box-shadow .3s;
}
.con-video:hover .con-video__play { scale: 1.08; box-shadow: 0 0 0 16px rgb(var(--cor-destaque-rgb) / .133), 0 12px 40px #0008; }
.con-video__titulo { position: absolute; z-index: 1; left: 22px; right: 22px; bottom: 18px; font: 700 clamp(20px, 1.5vw, 26px)/1.1 var(--fonte-titulo); text-transform: uppercase; }
.con-video--tocando::after, .con-video--tocando .con-video__titulo { display: none; }
.con-video__player { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* -------------------------------------------------------- volume do material */
.con-livro { --w: clamp(190px, 15vw, 250px); perspective: 1400px; width: calc(var(--w) * 1.08); }
.con-livro--grande { --w: clamp(220px, 17vw, 290px); }
.con-livro__volume { position: relative; width: var(--w); aspect-ratio: 3 / 4; transform-style: preserve-3d; transform: rotateY(-24deg) rotateX(4deg); transition: transform .7s cubic-bezier(.2, .7, .2, 1); }
a:hover .con-livro__volume, .con-livro:hover .con-livro__volume { transform: rotateY(-8deg) rotateX(2deg) translateY(-6px); }
.con-livro__frente {
  position: absolute; inset: 0; overflow: hidden; display: flex; flex-direction: column; padding: 11% 10%;
  background: linear-gradient(150deg, #2a2e33, #16181b 70%); border: 1px solid #66a68755; border-radius: 2px 6px 6px 2px;
  /* a espessura das folhas sai de sombras duras, sem outra face em 3D */
  box-shadow: 4px 3px 0 -1px #d9dce0, 8px 6px 0 -2px #b8bdc4, 12px 9px 0 -3px #9aa0a8, 22px 30px 50px #000a, inset 3px 0 0 #ffffff14;
  transform: translateZ(12px);
}
.con-livro__frente img:not(.con-livro__marca) { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.con-livro__faixas { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.con-livro__faixas i { position: absolute; top: -30%; height: 90%; left: 46%; width: 30%; background: var(--cor-destaque); opacity: .8; transform: rotate(32deg); }
.con-livro__faixas i:nth-child(2) { left: 86%; width: 8%; background: #66a687; }
.con-livro__faixas i:nth-child(3) { left: 102%; width: 3%; background: #b2b5c0; }
.con-livro__tipo, .con-livro__titulo, .con-livro__marca { position: relative; z-index: 1; }
.con-livro__tipo { margin-top: 42%; font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--cor-destaque); }
.con-livro__titulo { margin-top: 8px; font: 700 calc(var(--w) * .088)/1.02 var(--fonte-titulo); text-transform: uppercase; color: #fff; display: -webkit-box; -webkit-line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
.con-livro__marca { margin-top: auto; width: 46%; height: auto; opacity: .85; }
.con-livro__lombada { position: absolute; top: 0; bottom: 0; left: 0; width: 24px; background: linear-gradient(90deg, #0c3a24, #03733d); transform: rotateY(-90deg) translateZ(12px); transform-origin: left; }

/* ---------------------------------------------------------------- materiais */
.con-estante { padding-block: clamp(40px, 4vw, 70px) clamp(90px, 8vw, 140px); }
.con-estante__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(40px, 4vw, 70px) clamp(22px, 2.4vw, 44px); }
.con-estante__item a { display: flex; flex-direction: column; height: 100%; color: #fff; text-decoration: none; }
.con-estante__item .con-livro { margin: 0 0 40px 10px; }
.con main .con-estante h2 { margin: 12px 0; max-width: none; font-size: clamp(26px, 1.9vw, 34px); line-height: 1.05; }
.con-estante p { margin: 0 0 20px; font-size: 16px; line-height: 1.6; color: #c9ccd2; }
.con-estante__item a:hover .con-card__acao span { transform: translateX(5px); }

/* material: texto à esquerda, cadastro fixo à direita */
.con-mat { position: relative; isolation: isolate; overflow: clip; padding: 150px 0 clamp(90px, 8vw, 140px); background: radial-gradient(ellipse 45% 70% at 85% 10%, #03733d33, transparent 70%), var(--cor-fundo); }
.con-mat .con-hero__faixas { --faixa-1: #66a687; --faixa-2: var(--cor-destaque); width: min(34%, 600px); height: 560px; bottom: auto; opacity: .7; }
.con-mat__grade { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(360px, .75fr); gap: clamp(40px, 6vw, 110px); align-items: start; }
.con-mat__lead { margin: 28px 0 40px; max-width: 760px; font-size: clamp(19px, 1.4vw, 24px); line-height: 1.6; color: #dfe2e6; }
.con-mat__texto .con-prosa { max-width: 760px; margin-bottom: 50px; }
.con-mat__topicos { list-style: none; margin: 0; padding: 0; max-width: 760px; counter-reset: topico; }
.con-mat__topicos li { position: relative; counter-increment: topico; padding: 16px 0 16px 56px; border-bottom: 1px solid #b2b5c026; font-size: 18px; line-height: 1.45; color: #fff; }
.con-mat__topicos li::before { content: counter(topico, decimal-leading-zero); position: absolute; left: 0; top: 16px; font: 700 18px/1.3 var(--fonte-titulo); color: var(--cor-destaque); }
.con-mat__case { display: grid; grid-template-columns: 1fr auto; gap: 4px 20px; align-items: center; margin-top: 50px; max-width: 760px; padding: 22px 26px; border: 1px solid #b2b5c033; color: #fff; text-decoration: none; transition: border-color .3s; }
.con-mat__case:hover { color: #fff; border-color: var(--cor-destaque); }
.con-mat__case small { font-size: 12px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: #b2b5c0; }
.con-mat__case strong { grid-column: 1; font: 700 22px/1.15 var(--fonte-titulo); text-transform: uppercase; }
.con-mat__case > span { grid-row: 1 / span 2; grid-column: 2; font-size: 26px; color: var(--cor-destaque); }
.con-mat__lado { position: sticky; top: 110px; }
.con-mat__lado .con-livro { position: relative; z-index: 2; margin: 0 auto -70px; }
.con-mat__painel { position: relative; padding: 100px clamp(24px, 2.4vw, 40px) clamp(26px, 2.4vw, 40px); background: #1a1d20e6; border: 1px solid #b2b5c033; border-top: 3px solid var(--cor-destaque); box-shadow: 0 30px 70px #0008; backdrop-filter: blur(6px); }
.con main .con-mat__painel-titulo { margin: 0 0 22px; max-width: none; font-size: clamp(26px, 1.9vw, 34px); line-height: 1.05; }
.form--material .form__grade { gap: 14px 16px; }
.form--material .form__aceites { display: grid; gap: 12px; margin: 22px 0 24px; }
.form--material .form__aceite label { font-size: 14px; }
.form--material .form__enviar { width: 100%; justify-content: center; }

/* ------------------------------------------------------------ telas menores */
@media (max-width: 1100px) {
  .con-cards, .con-cards--4, .con-estante__lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .con-portas__grade { grid-template-columns: 1fr; }
  .con-porta a { min-height: 0; }
  .con main .con-porta h2 { margin-top: 30px; }
  .con-caso a { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) 30px; }
  .con-caso__num { display: none; }
  .con-caso__numeros { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .con-cards--compacto { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .con-mat__grade { grid-template-columns: 1fr; }
  .con-mat__lado { position: static; max-width: 560px; }
  .con-case-numeros ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .con-case-numeros li:not(:nth-child(4n + 1)) { padding-left: 0; border-left: 0; }
  .con-case-numeros li:nth-child(even) { padding-left: 24px; border-left: 1px solid #b2b5c01f; }
}
@media (max-width: 800px) {
  .con-hero, .con-artigo__cabeca, .con-case-hero, .con-mat, .con-hub .con-portas { padding-top: 115px; }
  .con-hero__faixas { width: 70%; opacity: .5; }
  .con main .con-hero h1 { font-size: clamp(48px, 12vw, 72px); }
  .con-cards, .con-cards--4, .con-estante__lista { grid-template-columns: 1fr; }
  .con-destaque__area { grid-template-columns: 1fr; }
  .con-caso a { grid-template-columns: 1fr; gap: 18px; }
  .con-caso__ir { display: none; }
  .con-caso__numeros { grid-template-columns: 1fr; }
  .con-artigo__metades { grid-template-columns: 1fr; }
  .con-artigo__capa .con-capa { aspect-ratio: 16 / 9; }
  .con-cards--compacto { grid-template-columns: 1fr; }
  .con-ato { grid-template-columns: 1fr; gap: 20px; }
  .con main .con-ato__nome { position: static; }
  .con-case-voz__videos--2 { grid-template-columns: 1fr; }
  .con-case-voz__citacao { padding-left: 0; padding-top: 70px; }
  .con-faixa-material__grade { grid-template-columns: 1fr; }
  .con-case-hero__cliente { font-size: 140px; }
  .form--material .form__grade { grid-template-columns: 1fr; }
  .con-case-numeros strong { font-size: 36px; }
  .con-case-numeros li:nth-child(even) { padding-left: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .con-hero__faixas i, .con-case-hero__cliente { transform: rotate(28deg); }
  .con-case-hero__cliente { transform: none; }
  .con-livro__volume { transition: none; }
}

/* CTA escuro com a marca, como nas institucionais (o cinza é do Advisory) */
.con .e3v-cta { background: linear-gradient(100deg, #2b2f33, var(--cor-fundo) 70%); color: #fff; border-top: 1px solid #b2b5c026; }
.con .e3v-cta .ip-textlink { color: var(--cor-destaque); }
.con .e3v-cta .ip-textlink:hover { color: #fff; }

/* um material só: volume e texto lado a lado, para a estante não ficar vazia */
@media (min-width: 801px) {
  .con-estante__item:only-child { grid-column: 1 / -1; }
  .con-estante__item:only-child a { display: grid; grid-template-columns: auto minmax(0, 720px); grid-template-rows: auto auto auto 1fr; column-gap: clamp(50px, 6vw, 110px); align-items: start; }
  .con-estante__item:only-child .con-livro { grid-row: 1 / span 4; margin: 0; }
  .con-estante__item:only-child .con-card__meta { margin-top: 40px; }
  .con main .con-estante__item:only-child h2 { font-size: clamp(34px, 2.8vw, 54px); }
  .con-estante__item:only-child p { font-size: 18px; }
}

/* =============================================================================
   Segunda rodada (28/09/2026)
   ========================================================================== */

/* --- Conhecimento: sem banner; as portas abrem a página sobre a foto -------- */
.con-hub .con-portas { position: relative; isolation: isolate; overflow: clip; padding-top: clamp(130px, 9vw, 160px); padding-bottom: clamp(60px, 5vw, 90px); }
.con-portas__foto {
  position: absolute; z-index: -1; top: 0; right: 0; width: min(74%, 1500px); height: min(92%, 980px); pointer-events: none;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 38%), linear-gradient(0deg, transparent, #000 40%);
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(90deg, transparent, #000 38%), linear-gradient(0deg, transparent, #000 40%);
  mask-composite: intersect;
}
/* a matriz #con-verde (no snippet) leva a foto aos verdes da Intellevo */
.con-portas__foto img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 62%; filter: url(#con-verde) brightness(1.9) contrast(1.1); opacity: .95; }
.con-hub .con-porta a { background: linear-gradient(170deg, #2a2e3399, #1c1f22b8 70%); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); }

/* --- Blog: faixa baixa, título central, cabos com dados passando ------------ */
.con-hero--cabos {
  padding: 116px 0 clamp(34px, 2.6vw, 46px); text-align: center;
  background: radial-gradient(ellipse 34% 90% at 50% 70%, #03733d40, transparent 70%), linear-gradient(180deg, #131518, #181b1e 55%, rgb(var(--cor-fundo-rgb) / 0));
}
.con-hero--cabos .con-hero__inner { display: flex; justify-content: center; }
.con main .con-hero--cabos h1 { margin: 0; max-width: none; font-size: clamp(44px, 4.2vw, 76px); cursor: default; }
.con-hero--cabos .traco-marca::after { margin-inline: auto; background: linear-gradient(90deg, rgb(var(--cor-destaque-rgb) / 0), var(--cor-destaque), rgb(var(--cor-destaque-rgb) / 0)); }
.con-hero--cabos h1 span { display: inline-block; }
.con-hero--cabos h1 em { font-style: normal; color: var(--cor-destaque); }
@media (prefers-reduced-motion: no-preference) {
  .con-hero--cabos h1:hover span { animation: con-onda .7s cubic-bezier(.3, .7, .3, 1) both; animation-delay: calc(var(--i) * 32ms); }
  .con-hero--cabos h1:hover em span { animation-name: con-onda-verde; }
}
@keyframes con-onda {
  0%, 100% { transform: none; }
  35% { transform: translateY(-.16em); color: var(--cor-destaque); text-shadow: 0 0 22px rgb(var(--cor-destaque-rgb) / .667); }
  60% { color: #fff; }
}
@keyframes con-onda-verde {
  0%, 100% { transform: none; }
  35% { transform: translateY(-.16em); color: #fff; text-shadow: 0 0 22px var(--cor-destaque); }
}
.con-cabos {
  position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; pointer-events: none;
  -webkit-mask-image: linear-gradient(180deg, #000 45%, transparent), radial-gradient(ellipse 22% 60% at 50% 55%, #0005, #000 100%);
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(180deg, #000 45%, transparent), radial-gradient(ellipse 22% 60% at 50% 55%, #0005, #000 100%);
  mask-composite: intersect;
}
.con-cabos__fio { fill: none; stroke: var(--cor-destaque); stroke-opacity: .2; stroke-width: 1.2; transition: stroke-opacity .5s; }
.con-cabos__pulso { fill: none; stroke: var(--cor-destaque); stroke-width: 2.4; stroke-linecap: round; stroke-dasharray: 36 964; stroke-dashoffset: 1000; filter: drop-shadow(0 0 5px var(--cor-destaque)); opacity: .9; transition: stroke-width .4s; }
.con-cabos circle { fill: var(--cor-destaque); opacity: .55; }
.con-hero--cabos:has(h1:hover) .con-cabos__fio { stroke-opacity: .42; }
.con-hero--cabos:has(h1:hover) .con-cabos__pulso { stroke-width: 3.4; }
@media (prefers-reduced-motion: no-preference) {
  .con-cabos__pulso { animation: con-pulso var(--dur, 5s) linear var(--atraso, 0s) infinite; }
  .con-cabos circle { animation: con-no 2.6s ease-in-out infinite; }
  .con-cabos circle:nth-of-type(odd) { animation-delay: 1.3s; }
}
@media (prefers-reduced-motion: reduce) { .con-cabos__pulso { display: none; } }
@keyframes con-pulso { to { stroke-dashoffset: 0; } }
@keyframes con-no { 50% { opacity: 1; } }
/* os filtros de categoria saíram do banner e abrem a listagem */
.con-lista .con-filtros { justify-content: center; margin: 0 0 clamp(36px, 3vw, 56px); }

/* --- Cases: foto das cotações à direita, recorte irregular, ponta invadindo
   a seção de baixo -------------------------------------------------------- */
.con-hero--foto { overflow: visible; padding-bottom: clamp(90px, 8vw, 150px); background: var(--cor-fundo); }
.con-hero__foto {
  position: absolute; z-index: -1; right: 0; top: 0; bottom: clamp(-150px, -8vw, -70px); width: 60%; overflow: hidden; pointer-events: none;
  clip-path: polygon(20% 0, 100% 0, 100% 84%, 76% 100%, 40% 90%, 6% 96%, 13% 52%, 0 30%);
}
.con-hero__foto img {
  display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 45%;
  filter: url(#con-verde) contrast(1.1) brightness(.62);
  transform: scale(1.08) translateY(calc((.5 - var(--scene-progress, .5)) * 50px));
}
.con-hero__foto::after {
  content: ""; position: absolute; inset: 0;
  background:
    linear-gradient(90deg, var(--cor-fundo) 2%, rgb(var(--cor-fundo-rgb) / .769) 28%, rgb(var(--cor-fundo-rgb) / .333) 62%, rgb(var(--cor-fundo-rgb) / .133)),
    linear-gradient(0deg, var(--cor-fundo) 0%, rgb(var(--cor-fundo-rgb) / .667) 18%, rgb(var(--cor-fundo-rgb) / 0) 50%),
    linear-gradient(180deg, rgb(var(--cor-fundo-rgb) / .8), transparent 30%);
}
.con-hero__faixas--foto { inset: 0 0 clamp(-150px, -8vw, -70px) auto; width: 60%; -webkit-mask-image: linear-gradient(180deg, #000 55%, transparent); mask-image: linear-gradient(180deg, #000 55%, transparent); }
.con-hero__faixas--foto i { left: 18%; width: 7%; opacity: .5; }
.con-hero__faixas--foto i:nth-child(2) { left: 30%; width: 1.6%; background: var(--cor-destaque); opacity: .75; }
.con-hero__faixas--foto i:nth-child(3) { left: 84%; width: 11%; background: #03733d; opacity: .35; }
.con-hero--foto + .con-casos { position: relative; }
.con main .con-hero--foto h1 { max-width: 13ch; }
.con-hero--foto .con-hero__lead { max-width: 560px; }

/* --- faixas compactas: "Continue lendo" e "Outros cases" ------------------- */
.con-cards--compacto { gap: clamp(16px, 1.8vw, 32px); }
.con-cards--compacto .con-card__area { display: grid; grid-template-columns: clamp(96px, 8vw, 136px) minmax(0, 1fr); grid-template-rows: auto auto 1fr; column-gap: 18px; align-items: start; padding: 10px; margin: -10px; }
.con-cards--compacto .con-capa { grid-row: 1 / span 3; margin: 0; aspect-ratio: 4 / 3; }
.con-cards--compacto .con-capa--grafica b { display: none; }
.con-cards--compacto .con-card__meta { font-size: 11px; }
.con main .con-cards--compacto .con-card__titulo { margin: 6px 0; font-size: clamp(18px, 1.25vw, 23px); line-height: 1.1; }
.con-cards--compacto .con-card__acao { padding-top: 0; font-size: 13px; }

/* --- botão de modo claro/escuro ------------------------------------------- */
.con-tema {
  position: fixed; z-index: 90; top: 104px; right: var(--gutter);
  display: flex; align-items: center; gap: 10px; padding: 5px 14px 5px 5px;
  border: 1px solid #b2b5c040; border-radius: 40px; background: #16181bd9; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  font: 600 13px/1 var(--fonte-texto); color: #fff; cursor: pointer; transition: border-color .3s, background-color .4s, color .4s;
}
.con-tema:hover { border-color: var(--cor-destaque); }
.con-tema { transition: border-color .3s, background-color .4s, color .4s, opacity .35s, translate .35s; }
.con-tema--recolhido:not(:focus-visible) { opacity: 0; translate: 0 -12px; pointer-events: none; }
.con-tema:focus-visible { outline: 2px solid var(--cor-destaque); outline-offset: 3px; }
.con-tema__trilho { position: relative; display: flex; align-items: center; justify-content: space-between; width: 56px; height: 28px; padding: 0 7px; border-radius: 20px; background: #2c3136; }
.con-tema__trilho svg { position: relative; z-index: 1; width: 14px; height: 14px; color: #8c919b; transition: color .35s; }
.con-tema__trilho i { position: absolute; top: 3px; left: 3px; width: 22px; height: 22px; border-radius: 50%; background: var(--cor-destaque); box-shadow: 0 0 12px rgb(var(--cor-destaque-rgb) / .4); transition: transform .4s cubic-bezier(.2, .7, .2, 1), background-color .4s; }
.con-tema__lua { color: var(--cor-fundo) !important; }
@media (max-width: 800px) {
  .con-tema { top: auto; bottom: 18px; right: auto; left: 16px; padding: 5px; }
  .con-tema__texto { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
}

@media (max-width: 1100px) {
  .con-hero__foto, .con-hero__faixas--foto { width: 70%; }
}
@media (max-width: 800px) {
  .con-hero--cabos { padding-top: 104px; }
  .con-portas__foto { width: 100%; height: 60%; opacity: .55; }
  .con-hero--foto { padding-bottom: 60px; }
  .con-hero__foto, .con-hero__faixas--foto { width: 100%; bottom: -40px; opacity: .38; }
  .con-hero__foto { clip-path: polygon(0 0, 100% 0, 100% 90%, 60% 100%, 0 92%); }
}
@media (prefers-reduced-motion: reduce) {
  .con-hero__foto img { transform: none; }
}

/* =============================================================================
   Modo claro (blog, posts e cases). Padrão escuro; o botão grava a escolha
   no navegador e o <head> aplica antes da primeira pintura. Fundo no cinza da
   marca clareado, texto em Black e o verde de destaque trocado pelo Evo Green,
   porque o neon reprova em contraste sobre fundo claro (02-tokens.css).
   Cabeçalho, rodapé, capas gráficas, vídeos e o volume do material continuam
   escuros: são peças, não fundo.
   ========================================================================== */
html[data-tema="claro"] body.con-temavel { background: #e4e6ea; }
html[data-tema="claro"] .con-temavel main { color: var(--cor-fundo); }
html.con-tema-trocando .con-temavel main, html.con-tema-trocando .con-temavel main * { transition-property: background-color, color, border-color, fill, stroke, box-shadow !important; transition-duration: .45s !important; }
html[data-tema="claro"] body.con-temavel .cabecalho { background: rgb(var(--cor-fundo-rgb) / .949); }
html[data-tema="claro"] .con-temavel .con-tema { background: #ffffffd9; border-color: rgb(var(--cor-fundo-rgb) / .2); color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-tema__trilho { background: #d4d7dc; }
html[data-tema="claro"] .con-temavel .con-tema__trilho i { transform: translateX(28px); background: #03733d; box-shadow: none; }
html[data-tema="claro"] .con-temavel .con-tema__lua { color: #6b7079 !important; }
html[data-tema="claro"] .con-temavel .con-tema__sol { color: #fff; }

html[data-tema="claro"] .con-temavel .ip-breadcrumb { color: #5b6068; }
html[data-tema="claro"] .con-temavel .ip-breadcrumb a:hover { color: #03733d; }
html[data-tema="claro"] .con-temavel main .rotulo { color: #3a3f43; }
html[data-tema="claro"] .con-temavel main .rotulo::before { background: #03733d; }
html[data-tema="claro"] .con-temavel .traco-marca::after { background: linear-gradient(90deg, #03733d, #03733d00); }
html[data-tema="claro"] .con-temavel main :is(h1, h2) em { color: #03733d; }

/* banners */
html[data-tema="claro"] .con-temavel .con-hero--cabos { background: radial-gradient(ellipse 34% 90% at 50% 70%, rgb(var(--cor-destaque-rgb) / .149), transparent 70%), linear-gradient(180deg, #cdd0d6, #d8dbe0 55%, #e4e6ea00); }
html[data-tema="claro"] .con-temavel .con-hero--cabos .traco-marca::after { background: linear-gradient(90deg, #03733d00, #03733d, #03733d00); }
html[data-tema="claro"] .con-temavel .con-cabos__fio { stroke: #03733d; stroke-opacity: .22; }
html[data-tema="claro"] .con-temavel .con-cabos__pulso { stroke: #03733d; filter: drop-shadow(0 0 4px var(--cor-destaque)); }
html[data-tema="claro"] .con-temavel .con-cabos circle { fill: #03733d; }
@media (prefers-reduced-motion: no-preference) {
  html[data-tema="claro"] .con-temavel .con-hero--cabos h1:hover span { animation-name: con-onda-claro; }
  html[data-tema="claro"] .con-temavel .con-hero--cabos h1:hover em span { animation-name: con-onda-claro-verde; }
}
@keyframes con-onda-claro { 0%, 100% { transform: none; } 35% { transform: translateY(-.16em); color: #03733d; text-shadow: 0 6px 18px rgb(var(--cor-destaque-rgb) / .333); } }
@keyframes con-onda-claro-verde { 0%, 100% { transform: none; } 35% { transform: translateY(-.16em); color: var(--cor-fundo); text-shadow: 0 6px 18px rgb(var(--cor-destaque-rgb) / .333); } }
html[data-tema="claro"] .con-temavel .con-hero--foto { background: #e4e6ea; }
html[data-tema="claro"] .con-temavel .con-hero__foto img { filter: grayscale(1) contrast(1.05) brightness(1.08); opacity: .8; }
html[data-tema="claro"] .con-temavel .con-hero__foto::before { content: ""; position: absolute; inset: 0; z-index: 1; background: #03733d; mix-blend-mode: color; opacity: .55; }
html[data-tema="claro"] .con-temavel .con-hero__foto::after { z-index: 2; background: linear-gradient(90deg, #e4e6ea 2%, #e4e6eab3 26%, #e4e6ea33 62%, transparent), linear-gradient(0deg, #e4e6ea 0%, #e4e6ea00 42%), linear-gradient(180deg, #e4e6eacc, transparent 30%); }
html[data-tema="claro"] .con-temavel :is(.con-hero__lead, .con-case-hero__lead, .con-artigo__lead) { color: #3a3f43; }
html[data-tema="claro"] .con-temavel .con-case-hero { background: radial-gradient(ellipse 50% 80% at 80% 10%, #03733d26, transparent 70%), #e4e6ea; }
html[data-tema="claro"] .con-temavel .con-case-hero__cliente { -webkit-text-stroke-color: #03733d33; }
html[data-tema="claro"] .con-temavel .con-case-hero__meta { color: #5b6068; }
html[data-tema="claro"] .con-temavel .con-case-hero__meta span { background: #03733d; color: #fff; }

/* cartões, destaque, filtros e paginação */
html[data-tema="claro"] .con-temavel .con-filtros a { border-color: rgb(var(--cor-fundo-rgb) / .2); color: #3a3f43; }
html[data-tema="claro"] .con-temavel .con-filtros a:hover { border-color: #03733d; color: #03733d; }
html[data-tema="claro"] .con-temavel .con-filtros a[aria-current="page"] { background: #03733d; border-color: #03733d; color: #fff; }
html[data-tema="claro"] .con-temavel :is(.con-card__area, .con-destaque__area) { color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-card__area:is(:hover, :focus-visible) { color: var(--cor-fundo); border-color: #03733d66; box-shadow: 0 14px 34px rgb(var(--cor-fundo-rgb) / .122); background: #ffffff66; }
html[data-tema="claro"] .con-temavel .con-destaque__area:is(:hover, :focus-visible) { color: var(--cor-fundo); border-color: #03733d66; box-shadow: 0 14px 34px rgb(var(--cor-fundo-rgb) / .122); background: #ffffff66; }
html[data-tema="claro"] .con-temavel .con-destaque__area::after { background: radial-gradient(640px circle at 50% 0%, #03733d14, transparent 70%); }
html[data-tema="claro"] .con-temavel .con-card__area::after { background: radial-gradient(320px circle at var(--mx, 50%) var(--my, 0%), #03733d14, transparent 70%); }
html[data-tema="claro"] .con-temavel .con-card__meta { color: #5b6068; }
html[data-tema="claro"] .con-temavel :is(.con-card__resumo, .con-destaque p) { color: #3a3f43; }
html[data-tema="claro"] .con-temavel :is(.con-card__acao, .con-paginas a) { color: #03733d; }
html[data-tema="claro"] .con-temavel .con-paginas { border-color: rgb(var(--cor-fundo-rgb) / .149); color: #5b6068; }
html[data-tema="claro"] .con-temavel .con-vazio { border-color: rgb(var(--cor-fundo-rgb) / .267); color: #3a3f43; }
html[data-tema="claro"] .con-temavel :is(.con-recentes, .con-relacionados) { border-color: rgb(var(--cor-fundo-rgb) / .102); }

/* post */
html[data-tema="claro"] .con-temavel .con-artigo__cabeca { background: radial-gradient(ellipse 45% 90% at 90% 0%, #03733d1f, transparent 70%); }
html[data-tema="claro"] .con-temavel .con-artigo__meta { color: #5b6068; }
html[data-tema="claro"] .con-temavel .con-artigo__meta a { border-color: #03733d88; color: #03733d; }
html[data-tema="claro"] .con-temavel .con-artigo__meta a:hover { background: #03733d; color: #fff; }
html[data-tema="claro"] .con-temavel .con-artigo__meta > * + *:not(a)::before { color: #03733d; }
html[data-tema="claro"] .con-temavel .con-artigo__aviso { border-color: rgb(var(--cor-fundo-rgb) / .333); color: #5b6068; }
html[data-tema="claro"] .con-temavel .con-artigo__autor { color: #5b6068; }
html[data-tema="claro"] .con-temavel .con-artigo__autor strong { color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-artigo__avatar { background: #fff; border-color: #03733d66; color: #03733d; }
html[data-tema="claro"] .con-temavel .con-artigo__avatar--marca { background: var(--cor-fundo); color: #fff; }
html[data-tema="claro"] .con-temavel .con-artigo__capa .con-capa { box-shadow: 0 24px 50px rgb(var(--cor-fundo-rgb) / .2); }
html[data-tema="claro"] .con-temavel .con-artigo__lado { border-color: rgb(var(--cor-fundo-rgb) / .149); }
html[data-tema="claro"] .con-temavel .con-indice a { border-color: rgb(var(--cor-fundo-rgb) / .2); color: #3a3f43; }
html[data-tema="claro"] .con-temavel .con-indice a:hover { border-color: #03733d; color: #03733d; }
html[data-tema="claro"] .con-temavel :is(.con-compartilhar a, .con-compartilhar button) { border-color: rgb(var(--cor-fundo-rgb) / .267); color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel :is(.con-compartilhar a, .con-compartilhar button):hover { border-color: #03733d; color: #03733d; }
html[data-tema="claro"] .con-temavel .con-compartilhar__ok { color: #03733d; }
html[data-tema="claro"] .con-temavel .con-prosa { color: #2c3136; }
html[data-tema="claro"] .con-temavel .con-prosa :is(strong, th, blockquote) { color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-prosa .bloco-depoimento :is(blockquote, figcaption strong) { color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-prosa a:not(.ip-button) { color: #03733d; }
html[data-tema="claro"] .con-temavel .con-prosa ul li::before { background: #03733d; }
html[data-tema="claro"] .con-temavel .con-prosa ol li::before { color: #03733d; }
html[data-tema="claro"] .con-temavel .con-prosa :is(blockquote, .bloco-depoimento) { border-left-color: #03733d; }
html[data-tema="claro"] .con-temavel .con-prosa :is(blockquote footer, figcaption) { color: #5b6068; }
html[data-tema="claro"] .con-temavel .con-prosa :is(th, td) { border-color: rgb(var(--cor-fundo-rgb) / .149); }

/* cases e case */
html[data-tema="claro"] .con-temavel :is(.con-casos__lista, .con-caso a) { border-color: rgb(var(--cor-fundo-rgb) / .2); }
html[data-tema="claro"] .con-temavel .con-caso a, html[data-tema="claro"] .con-temavel .con-caso a:hover { color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-caso a::before { background: radial-gradient(520px circle at var(--mx, 50%) var(--my, 50%), #03733d1f, transparent 70%); }
html[data-tema="claro"] .con-temavel :is(.con-caso__num, .con-caso__ir) { color: #03733d; }
html[data-tema="claro"] .con-temavel .con-caso__cliente strong { -webkit-text-stroke-color: #03733d; }
html[data-tema="claro"] .con-temavel .con-caso a:hover .con-caso__cliente strong { color: #03733d; }
html[data-tema="claro"] .con-temavel :is(.con-caso__cliente span, .con-caso__numeros span, .con-case-numeros span) { color: #5b6068; }
html[data-tema="claro"] .con-temavel .con-caso p { color: #3a3f43; }
html[data-tema="claro"] .con-temavel :is(.con-caso__numeros strong, .con-case-numeros strong) { color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-faixa-material { background: linear-gradient(100deg, #d4d7dc, #e4e6ea 60%); border-color: rgb(var(--cor-fundo-rgb) / .102); }
html[data-tema="claro"] .con-temavel .con-faixa-material__titulo { color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-faixa-material p:not([class]) { color: #3a3f43; }
html[data-tema="claro"] .con-temavel .con-case-numeros ul { border-color: #03733d66; }
html[data-tema="claro"] .con-temavel .con-case-numeros li { border-color: rgb(var(--cor-fundo-rgb) / .133) !important; }
@keyframes con-numero-acende-claro { 0% { color: #03733d; text-shadow: 0 0 20px rgb(var(--cor-destaque-rgb) / .4); } 100% { color: var(--cor-fundo); text-shadow: none; } }
html[data-tema="claro"] .con-temavel .con-case-numeros strong.con-contado { animation-name: con-numero-acende-claro; }
html[data-tema="claro"] .con-temavel .con-ato { border-color: rgb(var(--cor-fundo-rgb) / .149); }
html[data-tema="claro"] .con-temavel :is(.con-ato__nome span, .con-ato--resultado .con-ato__nome) { color: #03733d; }
html[data-tema="claro"] .con-temavel .con-case-voz { background: linear-gradient(180deg, #d8dbe0, #e4e6ea); border-color: rgb(var(--cor-fundo-rgb) / .102); }
html[data-tema="claro"] .con-temavel .con-case-voz__citacao::before { color: #03733d; }
html[data-tema="claro"] .con-temavel .con-case-voz blockquote p { color: var(--cor-fundo); }
html[data-tema="claro"] .con-temavel .con-case-voz figcaption { color: #5b6068; }
html[data-tema="claro"] .con-temavel .con-case-voz figcaption strong { color: var(--cor-fundo); }

/* CTA do fim */
html[data-tema="claro"] .con-temavel .e3v-cta { background: linear-gradient(100deg, #cdd0d6, #dadde2 70%); color: var(--cor-fundo); border-color: rgb(var(--cor-fundo-rgb) / .102); }
html[data-tema="claro"] .con-temavel .e3v-cta .ip-textlink { color: #03733d; }
html[data-tema="claro"] .con-temavel .e3v-cta .ip-textlink:hover { color: var(--cor-fundo); }
