/* Campos & Fernandes Associados — desenho dos mockups de 26/10/2026.
   Tudo em Source Serif 4 (pedido do cliente em 26/10: mesma fonte em todos os textos). */

@font-face{font-family:"Source Serif 4";src:url("../fonts/SourceSerif4.woff2") format("woff2");font-weight:200 900;font-style:normal;font-display:swap}

:root{
  --navy:#0B1828;
  --navy-2:#0E1E33;
  --navy-3:#13263F;
  --tinta:#121C2B;
  --tinta-2:#3F4856;
  --tinta-3:#6B7280;
  --ouro:#C8963F;
  --ouro-esc:#A8792A;
  --ouro-cl:#E6BD6E;
  --ouro-grad:linear-gradient(180deg,#EBC67F 0%,#D3A453 48%,#BE8B39 100%);
  --creme:#FAF6EF;
  --creme-2:#F4EDE1;
  --fundo:#FBFAF8;
  --linha:#E7E2D9;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --sans:var(--serif);
  --sombra:0 8px 24px rgba(12,24,40,.08);
  --sombra-2:0 14px 36px rgba(12,24,40,.14);
  --larg:1260px;
  --gut:clamp(16px,3vw,32px);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--fundo);color:var(--tinta);font-family:var(--sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;color:var(--tinta);margin:0;line-height:1.12;letter-spacing:-.01em}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
em{font-style:normal}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px}
.wrap{width:100%;max-width:calc(var(--larg) + var(--gut)*2);margin-inline:auto;padding-inline:var(--gut)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ------------------------------------------------------------- tipografia */
.etiqueta{display:flex;align-items:center;gap:14px;font-family:var(--serif);font-size:.78rem;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--ouro-esc);margin-bottom:10px}
.etiqueta::after{content:"";width:42px;height:1px;background:currentColor;opacity:.85}
h2{font-size:clamp(1.65rem,2.45vw,2.2rem)}
h2 em,h1 em{color:var(--ouro)}
.tit-fio{display:flex;align-items:center;gap:16px}
.tit-fio::after{content:"";width:46px;height:1px;background:var(--ouro)}

/* ----------------------------------------------------------------- botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:var(--serif);font-size:1rem;font-weight:500;line-height:1.2;padding:13px 24px;border-radius:3px;border:1px solid transparent;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,background .18s ease,color .18s ease;white-space:nowrap}
.btn svg{width:19px;height:19px;flex:none}
.btn-gold{background:var(--ouro-grad);color:#17110A;border-color:#B88634;box-shadow:0 6px 16px rgba(170,120,40,.28),inset 0 1px 0 rgba(255,255,255,.35)}
.btn-gold:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 10px 22px rgba(170,120,40,.36),inset 0 1px 0 rgba(255,255,255,.35)}
.btn-lg{padding:15px 30px;font-size:1.06rem}
.btn-block{width:100%}
.btn-contorno{border-color:var(--ouro);color:var(--tinta);background:#fff;font-family:var(--sans);font-size:.86rem;font-weight:500}
.btn-contorno svg{color:var(--ouro)}
.btn-contorno:hover{background:var(--creme)}
.btn-linha{border-color:var(--linha);background:#fff;color:var(--tinta)}
.btn-linha:hover{border-color:var(--ouro)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.link-caixa{display:inline-flex;align-items:center;gap:12px;font-family:var(--serif);font-size:.78rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--tinta);padding-bottom:10px;border-bottom:2px solid var(--ouro);white-space:nowrap}
.link-caixa svg{width:17px;height:17px;color:var(--ouro);transition:transform .2s ease}
.link-caixa:hover svg{transform:translateX(4px)}
.link-fio{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-size:.95rem;font-weight:500;color:var(--ouro-esc);padding-bottom:6px;border-bottom:1px solid var(--ouro)}
.link-fio svg{width:17px;height:17px}

/* ------------------------------------------------------------ faixa topo */
.faixa-topo{background:#081322;color:#E8ECF2;font-size:.76rem}
.faixa-topo-in{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:32px}
.faixa-topo p{display:flex;align-items:center;gap:12px}
.faixa-topo i{width:1px;height:13px;background:rgba(255,255,255,.3)}
.ft-esq svg{width:19px;height:19px;color:var(--ouro-cl)}
.ft-esq b{font-weight:500;color:var(--ouro-cl)}
.ft-dir a:hover{color:var(--ouro-cl)}
.ft-nac{display:inline-flex;align-items:center;gap:7px}
.ft-nac svg{width:13px;height:13px;color:var(--ouro-cl)}
.ft-redes,.foot-redes{display:inline-flex;align-items:center;gap:14px;margin-left:8px}
.ft-redes svg{width:14px;height:14px}
.ft-redes a:hover,.foot-redes a:hover{color:var(--ouro-cl)}

/* -------------------------------------------------------------- cabeçalho */
.topbar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #EDEAE4;transition:box-shadow .2s ease}
body.rolou .topbar{box-shadow:0 6px 20px rgba(12,24,40,.08)}
body.admin-bar .topbar{top:32px}
.topbar-in{display:flex;align-items:center;gap:28px;min-height:82px}
.marca{display:block;flex:none}
/* Pedido do Jairo (27/10): logo do topo um pouco mais à esquerda quando sobra margem na tela (até 60 px; some abaixo de 1324 px) */
.topbar .marca{margin-left:clamp(-60px,calc((1324px - 100vw) / 2),0px)}
.marca img{width:322px;height:auto}
.tb-nav{display:flex;align-items:center;gap:clamp(22px,2.6vw,42px);margin-left:auto;font-family:var(--serif);font-size:1rem;color:var(--tinta)}
.tb-nav a{position:relative;padding:8px 0;white-space:nowrap;transition:color .18s ease}
.tb-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--ouro);transform:scaleX(0);transition:transform .2s ease}
.tb-nav a:hover{color:var(--ouro-esc)}
.tb-nav a.is-active{color:var(--ouro-esc)}
.tb-nav a.is-active::after,.tb-nav a:hover::after{transform:scaleX(1)}
.tb-cta{margin-left:clamp(14px,2.6vw,48px);padding:12px 22px}
.burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;margin-left:auto;color:var(--tinta)}
.burger svg{width:26px;height:26px}

/* menu do celular */
.sidebar{position:fixed;inset:0 auto 0 0;width:min(340px,86vw);z-index:60;background:#fff;padding:22px 22px 28px;display:flex;flex-direction:column;gap:18px;overflow-y:auto;transform:translateX(-102%);transition:transform .28s ease;box-shadow:var(--sombra-2)}
body.nav-open .sidebar{transform:none}
.sb-close{position:absolute;top:14px;right:12px;width:40px;height:40px;display:flex;align-items:center;justify-content:center}
.sb-close svg{width:22px;height:22px}
.sb-brand .marca img{width:230px}
.sb-nav{display:flex;flex-direction:column;border-top:1px solid var(--linha)}
.sb-nav a{display:flex;align-items:center;gap:14px;padding:13px 4px;border-bottom:1px solid var(--linha);font-family:var(--serif);font-size:1.05rem}
.sb-nav a svg{width:20px;height:20px;color:var(--ouro)}
.sb-nav a.is-active{color:var(--ouro-esc)}
.sb-contact{display:flex;flex-direction:column;gap:10px;font-size:.88rem;color:var(--tinta-2)}
.sb-contact a{display:flex;align-items:center;gap:10px}
.sb-contact svg{width:17px;height:17px;color:var(--ouro)}
.scrim{position:fixed;inset:0;z-index:58;background:rgba(8,19,34,.55);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}
body.nav-open .scrim{opacity:1;visibility:visible}

/* ------------------------------------------------------------------ herói */
.heroi{position:relative;background:var(--navy);color:#fff;overflow:hidden;isolation:isolate}
.heroi-foto{position:absolute;inset:0 0 0 auto;width:64%;z-index:-2}
.heroi-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,rgba(11,24,40,.86) 14%,rgba(11,24,40,.35) 42%,rgba(11,24,40,.08) 70%,rgba(11,24,40,.32) 100%),linear-gradient(0deg,rgba(11,24,40,.35),transparent 40%)}
.heroi-foto img{width:100%;height:100%;object-fit:cover;object-position:60% 35%}
.heroi-in{position:relative;display:flex;align-items:center;gap:40px;min-height:clamp(330px,26vw,380px);padding-block:clamp(34px,3.2vw,46px)}
.heroi-texto{max-width:680px}
.heroi .etiqueta{color:var(--ouro-cl)}
.heroi h1{color:#fff;font-size:clamp(2rem,3.2vw,2.95rem);line-height:1.07;letter-spacing:-.015em}
.heroi h1 em{background:linear-gradient(180deg,#F1CD86,#D9A650);-webkit-background-clip:text;background-clip:text;color:transparent}
.heroi-sub{margin-top:18px;max-width:540px;font-size:1.04rem;line-height:1.55;color:#E5E9EF}
.heroi .btn{margin-top:26px}
.heroi-lista{position:absolute;right:max(var(--gut),calc((100vw - var(--larg))/2 - 70px));bottom:clamp(26px,2.6vw,36px);padding-left:18px;border-left:2px solid var(--ouro);font-family:var(--serif);font-size:.76rem;line-height:1.95;letter-spacing:.24em;text-transform:uppercase;color:#E9ECF1}
.trilha{display:flex;align-items:center;gap:10px;margin-bottom:18px;font-size:.82rem;color:#E5E9EF}
.trilha a::before{content:"\2726";color:var(--ouro-cl);margin-right:6px;font-size:.7rem}
.trilha svg{width:13px;height:13px}
.heroi-cf{position:absolute;right:7%;top:6%;width:clamp(120px,11vw,170px);z-index:-1;filter:drop-shadow(0 8px 24px rgba(0,0,0,.5));opacity:.95}
.heroi-esp .heroi-foto{width:70%}
.heroi-esp .heroi-foto img{object-position:50% 40%}
.heroi-esp .heroi-texto{max-width:820px}
.heroi-noticias .heroi-foto{width:62%}
.heroi-noticias .heroi-foto img{object-position:30% 50%}
.heroi-noticias .heroi-in{min-height:clamp(330px,23vw,370px)}
.heroi-noticias .heroi-lista{display:none}
.heroi-area .heroi-foto{width:72%}
.heroi-area .heroi-foto img{object-position:35% 30%}
.heroi-area{overflow:visible;z-index:3}
.heroi-area .heroi-foto{overflow:hidden}
.heroi-area .heroi-in{align-items:flex-start;justify-content:space-between;min-height:350px;padding-bottom:36px}
.heroi-area .heroi-texto{padding-top:12px}
.heroi-simples{background:var(--navy);color:#fff;padding-block:clamp(40px,4vw,64px)}
.heroi-simples h1{color:#fff;font-size:clamp(2rem,3vw,2.8rem);max-width:26ch}
.heroi-simples .etiqueta{color:var(--ouro-cl)}

/* ---------------------------------------------------------- faixas de ícone */
.faixa-escura{background:var(--navy-2);color:#fff}
.faixa-ic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.fi-item{display:flex;align-items:flex-start;gap:20px;padding:24px clamp(16px,2.2vw,34px)}
.fi-item{position:relative}
.fi-item+.fi-item::before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:1px;background:rgba(200,150,63,.55)}
.fi-item:first-child{padding-left:0}
.fi-ico{flex:none;color:var(--ouro)}
.fi-ico svg{width:48px;height:48px;stroke-width:1.25}
.fi-item h3{font-size:1.06rem;line-height:1.2;margin-bottom:8px}
.fi-item p{font-size:.82rem;line-height:1.5}
.faixa-ic-escura h3{color:#fff}
.faixa-ic-escura p{color:#C9D0DA}
.faixa-ic:not(.faixa-ic-escura){background:var(--creme);margin-top:clamp(22px,2.4vw,34px);border-radius:2px}
.faixa-ic:not(.faixa-ic-escura) .fi-item:first-child{padding-left:clamp(18px,2.4vw,34px)}
.faixa-ic:not(.faixa-ic-escura) .fi-item+.fi-item::before{background:#E3D6BF}
.faixa-ic:not(.faixa-ic-escura) p{color:var(--tinta-2)}

/* ----------------------------------------------------------------- seções */
.sec{padding-block:clamp(36px,3.6vw,54px)}
.cab-3{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.15fr) auto;gap:clamp(20px,3vw,48px);align-items:center;margin-bottom:clamp(20px,2vw,28px)}
.cab-3 h2,.cab-2 h2{max-width:20ch}
.cab-3>p,.cab-2>p{font-family:var(--serif);font-size:1.02rem;line-height:1.5;color:var(--tinta-2)}
.cab-2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,70px);align-items:center;margin-bottom:clamp(22px,2.2vw,30px)}
.cab-2 h2{max-width:none}

/* --------------------------------------------------------------- soluções */
.sol-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,1.9vw,26px)}
.sol-card{display:flex;flex-direction:column;background:#fff;box-shadow:var(--sombra);border-radius:3px;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.sol-card:hover{transform:translateY(-4px);box-shadow:var(--sombra-2)}
.sol-foto{display:block;aspect-ratio:300/74;overflow:hidden;background:var(--navy)}
.sol-foto img{width:100%;height:100%;object-fit:cover}
.sol-corpo{position:relative;flex:1;display:flex;gap:14px;padding:16px 34px 18px 18px}
.sol-ico{flex:none;color:var(--ouro);padding-top:2px}
.sol-ico svg{width:38px;height:38px;stroke-width:1.3}
.sol-txt{display:flex;flex-direction:column;gap:6px}
.sol-nome{font-family:var(--serif);font-size:1.04rem;font-weight:600;line-height:1.2;color:var(--tinta)}
.sol-curto{font-family:var(--serif);font-size:.9rem;line-height:1.42;color:var(--tinta-2)}
.sol-seta{position:absolute;right:16px;bottom:16px;color:var(--ouro)}
.sol-seta svg{width:18px;height:18px;transition:transform .2s ease}
.sol-card:hover .sol-seta svg{transform:translateX(4px)}

/* --------------------------------------------- faixa escura A CFA (home) */
.faixa-cfa{position:relative;background:var(--navy-2);color:#fff;overflow:hidden;isolation:isolate}
.faixa-cfa-foto{position:absolute;inset:0 auto 0 0;width:30%;z-index:-1}
.faixa-cfa-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,var(--navy-2))}
.faixa-cfa-foto img{width:100%;height:100%;object-fit:cover}
.faixa-cfa-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(28px,4vw,64px);align-items:center;padding-block:clamp(26px,2.4vw,34px);padding-left:max(var(--gut),min(27%,calc(var(--gut) + 340px)))}
.faixa-cfa-txt{padding-right:clamp(26px,4vw,60px);border-right:1px solid rgba(200,150,63,.55)}
.faixa-cfa .etiqueta{color:var(--ouro-cl);font-size:.72rem}
.faixa-cfa .etiqueta::after{display:none}
.faixa-cfa h2{color:#fff;font-size:clamp(1.45rem,2vw,1.85rem);font-weight:500;max-width:27ch}
.faixa-cfa p{margin-top:12px;font-family:var(--serif);font-size:.98rem;line-height:1.5;color:#D7DDE6;max-width:58ch}
.lista-ic{display:flex;flex-direction:column;gap:14px}
.lista-ic li{display:flex;align-items:center;gap:18px;font-family:var(--serif);font-size:1rem;color:#fff}
.lista-ic svg{width:28px;height:28px;flex:none;color:var(--ouro)}

/* ------------------------------------------------------- passos (Soluções) */
.faixa-passos{background:var(--navy-2);color:#fff}
.faixa-passos-in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,2.15fr) auto;gap:clamp(22px,3vw,44px);align-items:center;padding-block:clamp(22px,2.4vw,32px)}
.fp-intro .etiqueta{color:var(--ouro-cl);font-size:.72rem}
.fp-intro h2{color:#fff;font-size:clamp(1.5rem,2.1vw,1.9rem)}
.fp-intro p{margin-top:8px;font-size:.84rem;color:#C9D0DA}
.passos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.6vw,40px)}
.passos li{position:relative}
.passos li+li::before{content:"";position:absolute;left:calc(-1 * clamp(14px,1.8vw,26px));top:26px;width:10px;height:10px;border-top:2px solid var(--ouro);border-right:2px solid var(--ouro);transform:rotate(45deg)}
.passo-n{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--ouro-grad);color:#17110A;font-family:var(--serif);font-weight:700;margin-right:14px;vertical-align:middle}
.passos li>svg{display:inline-block;width:34px;height:34px;color:var(--ouro);vertical-align:middle;stroke-width:1.3}
.passos h3{margin-top:12px;color:#fff;font-size:1.04rem}
.passos p{margin-top:4px;font-size:.8rem;color:#C9D0DA;line-height:1.45}
.fp-cta{padding-left:clamp(20px,2.6vw,40px);border-left:1px solid rgba(200,150,63,.55)}
.fp-cta p{margin-top:16px;font-family:var(--serif);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;line-height:1.8;color:#C9D0DA}

/* ---------------------------------------------------------- especialistas */
.sec-esp{padding-top:clamp(24px,2.4vw,34px)}
.esp-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,1.3vw,18px)}
.esp-card{display:flex;flex-direction:column;background:#fff;box-shadow:var(--sombra);border-radius:3px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.esp-card:hover{transform:translateY(-3px);box-shadow:var(--sombra-2)}
.esp-foto{display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:var(--navy)}
.esp-foto img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;transition:transform .4s ease}
.esp-card:hover .esp-foto img{transform:scale(1.04)}
.esp-corpo{display:flex;flex-direction:column;flex:1;padding:16px 16px 18px}
.esp-corpo h3{font-size:1.08rem;line-height:1.2}
.esp-corpo h3 button{text-align:left;font-family:inherit;font-weight:inherit}
.esp-corpo h3 button:hover{color:var(--ouro-esc)}
.esp-cargo{margin-top:4px;font-family:var(--serif);font-size:.82rem;line-height:1.35;color:var(--ouro-esc)}
.esp-txt{margin-top:10px;font-family:var(--serif);font-size:.82rem;line-height:1.45;color:var(--tinta-2)}
.esp-link{margin-top:auto;padding-top:14px;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;font-family:var(--serif);font-size:.84rem;color:var(--ouro-esc);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(200,150,63,.5)}
.esp-link svg{width:14px;height:14px;transition:transform .2s ease}
.esp-link:hover svg{transform:translateX(3px)}
.metodologia{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.72fr) minmax(0,2.85fr);gap:clamp(22px,3vw,44px);align-items:center;margin-top:clamp(28px,3vw,44px)}
.met-intro h2{font-size:clamp(1.6rem,2.1vw,2rem)}
.met-intro .etiqueta{white-space:nowrap}
.met-apoio{font-family:var(--serif);font-size:.96rem;line-height:1.5;color:var(--tinta-2)}
.metodo{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.metodo li{display:flex;gap:10px;padding-inline:clamp(8px,1vw,16px);min-width:0}
.metodo li>div{min-width:0}
.metodo li+li{border-left:1px solid var(--linha)}
.met-ico{color:var(--ouro);flex:none}
.met-ico svg{width:30px;height:30px;stroke-width:1.3}
.met-n{display:block;font-family:var(--serif);font-size:1.05rem;color:var(--ouro-esc)}
.metodo h3{font-size:.88rem;margin:2px 0 4px}
.metodo p{font-family:var(--serif);font-size:.78rem;line-height:1.4;color:var(--tinta-2)}

/* ------------------------------------------------------- faixa de chamada */
.faixa-cta{position:relative;background:var(--navy-2);color:#fff;overflow:hidden;isolation:isolate}
.faixa-cta-foto{position:absolute;inset:0;z-index:-1}
.faixa-cta-foto img{width:100%;height:100%;object-fit:cover}
.faixa-cta-foto::after{content:"";position:absolute;inset:0;background:rgba(11,24,40,.8)}
.faixa-cta-in{display:flex;align-items:center;justify-content:space-between;gap:clamp(20px,3vw,48px);padding-block:clamp(22px,2.4vw,32px)}
.faixa-cta-txt{display:flex;align-items:center;gap:clamp(20px,3vw,44px)}
.faixa-cta h2{color:#fff;font-weight:500;font-size:clamp(1.4rem,1.9vw,1.75rem);max-width:17ch}
.faixa-cta-txt p{padding-left:clamp(20px,3vw,44px);border-left:1px solid rgba(200,150,63,.6);font-size:.88rem;color:#D7DDE6;max-width:44ch}
.faixa-cta-cf .faixa-cta-foto{right:auto;width:30%}
.faixa-cta-cf .faixa-cta-foto::after{background:linear-gradient(90deg,rgba(11,24,40,.15),var(--navy-2))}
.faixa-cta-cf .faixa-cta-in{padding-left:max(var(--gut),min(28%,calc(var(--gut) + 355px)))}
.faixa-cta-cf .faixa-cta-txt{display:block}
.faixa-cta-cf .etiqueta{color:var(--ouro-cl);font-size:.68rem}
.faixa-cta-cf .etiqueta::after{display:none}
.faixa-cta-cf h2{max-width:none;font-size:clamp(1.6rem,2.2vw,2rem)}
.faixa-cta-cf .faixa-cta-txt p{border:0;padding:0;margin-top:6px;max-width:62ch}

/* ------------------------------------------------------------------ A CFA */
.sec-cfa{padding-top:clamp(14px,1.4vw,20px)}
.cfa-3{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(14px,1.4vw,20px);align-items:stretch}
.cfa-3 h2{font-size:clamp(1.5rem,2vw,1.85rem);margin-bottom:14px}
.cfa-quem{padding:clamp(18px,1.6vw,22px) clamp(16px,2vw,28px) 0 0}
.cfa-quem p,.cfa-proposta p{font-size:.9rem;line-height:1.6;color:var(--tinta-2)}
.cfa-proposta{background:var(--creme);padding:clamp(22px,2.4vw,32px)}
.cfa-proposta .link-caixa{margin-top:24px}
.cfa-dif{position:relative;background:var(--navy-2);color:#fff;padding:clamp(22px,2.4vw,32px);overflow:hidden;isolation:isolate}
.cfa-dif h2{color:#fff;max-width:15ch}
.cfa-3 .etiqueta{letter-spacing:.2em;font-size:.7rem}
.cfa-dif .etiqueta{color:var(--ouro-cl)}
.cfa-dif-cf{position:absolute;right:0;top:50%;transform:translateY(-50%);height:78%;width:auto;z-index:-1;mask-image:linear-gradient(90deg,transparent,#000 40%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%)}
.lista-ic-p{gap:12px;max-width:68%}
.lista-ic-p li{font-family:var(--sans);font-size:.82rem}
.lista-ic-p svg{width:22px;height:22px}
.atuacao{position:relative;background:#fff;overflow:hidden}
.atuacao-foto{position:absolute;inset:0 auto 0 0;width:31%}
.atuacao-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,#fff)}
.atuacao-foto img{width:100%;height:100%;object-fit:cover}
.atuacao-in{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.62fr) minmax(0,.95fr);gap:clamp(18px,2.4vw,36px);align-items:center;padding-block:clamp(26px,2.6vw,38px);padding-left:max(var(--gut),min(32%,calc(var(--gut) + 410px)))}
.atuacao h2{font-size:clamp(1.5rem,2vw,1.8rem);margin-bottom:10px}
.atuacao-txt p{font-size:.86rem;color:var(--tinta-2);line-height:1.55}
.atuacao .btn-contorno{margin-top:16px;padding:9px 18px;font-family:var(--serif);font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro-esc)}
.atuacao-mapa{width:100%;max-width:200px;justify-self:center;mix-blend-mode:multiply}
.numeros{border-left:1px solid var(--linha);padding-left:clamp(16px,2vw,28px)}
.numeros li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;padding-block:12px}
.numeros li+li{border-top:1px solid var(--linha)}
.numeros b{grid-row:span 2;font-family:var(--serif);font-size:2.3rem;font-weight:500;color:var(--ouro-esc);line-height:1}
.numeros i{grid-row:span 2;color:var(--ouro)}
.numeros i svg{width:40px;height:40px;stroke-width:1.3}
.numeros em{font-family:var(--serif);font-size:1.05rem;line-height:1.1;color:var(--ouro-esc)}
.numeros li:last-child em{color:var(--tinta)}
.numeros li>span{font-size:.72rem;color:var(--tinta-3);line-height:1.35}

/* ---------------------------------------------------------------- contato */
.sec-contato{scroll-margin-top:90px}
.contato-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,3.4vw,56px)}
.contato-lado{padding-left:clamp(20px,3vw,44px);border-left:1px solid var(--linha)}
.contato-2 h2{font-size:clamp(1.65rem,2.3vw,2.1rem);max-width:none}
.apoio{margin-top:10px;font-size:.98rem;color:var(--tinta-2);line-height:1.5}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px;margin-top:22px}
.campo{display:flex;flex-direction:column;gap:7px;min-width:0;position:relative}
.campo-largo{grid-column:1/-1}
.campo label,.campo legend{font-family:var(--serif);font-size:.95rem;font-weight:600;color:var(--tinta)}
.campo i{font-style:normal;color:#C0392B}
.campo input,.campo select,.campo textarea{width:100%;min-width:0;font:inherit;font-size:.86rem;color:var(--tinta);background:#fff;border:1px solid #D9DCE1;border-radius:3px;padding:11px 14px;transition:border-color .18s ease,box-shadow .18s ease}
.campo textarea{min-height:76px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:0;border-color:var(--ouro);box-shadow:0 0 0 3px rgba(200,150,63,.18)}
.contador{position:absolute;right:10px;bottom:8px;font-size:.66rem;color:var(--tinta-3)}
fieldset.campo{border:0;padding:0;margin:0}
fieldset.campo legend{margin-bottom:8px;padding:0}
.opcoes{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.opcao{display:flex;align-items:center;gap:16px;padding:14px 18px;border:1px solid #D9DCE1;border-radius:3px;background:#fff;cursor:pointer;transition:border-color .18s ease,background .18s ease}
.opcao:has(input:checked){border-color:var(--ouro);background:#FFFBF3}
.opcao input{width:20px;height:20px;accent-color:var(--ouro);flex:none}
.opcao-ic{color:var(--ouro)}
.opcao-ic svg{width:32px;height:32px;stroke-width:1.3}
.opcao b{display:block;font-family:var(--serif);font-size:.98rem}
.opcao small{display:block;font-size:.76rem;color:var(--tinta-2);line-height:1.35}
.form .btn-gold{margin-top:6px}
.form-nota{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.74rem;color:var(--tinta-2);text-align:center}
.form-nota svg{width:13px;height:13px;flex:none}
.razoes{margin-top:22px;display:flex;flex-direction:column;gap:16px}
.razoes li{display:flex;align-items:center;gap:22px}
.razao-ic{flex:none;width:62px;height:62px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#FFF6E6,#F6E7CC);display:flex;align-items:center;justify-content:center;color:var(--ouro)}
.razao-ic svg{width:30px;height:30px;stroke-width:1.4}
.razoes h3{font-size:1.1rem}
.razoes p{margin-top:3px;font-size:.84rem;color:var(--tinta-2);line-height:1.45;max-width:46ch}
.canais{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;margin-top:22px;padding-top:20px;border-top:1px solid #EADFC9}
.canais .etiqueta{font-size:.7rem}
.canais-lista{display:flex;flex-direction:column;gap:12px;margin-top:6px}
.canais-lista li{display:flex;gap:16px;align-items:flex-start}
.canais-lista svg{width:24px;height:24px;flex:none;color:var(--ouro)}
.canais-lista b{font-family:var(--serif);font-size:.98rem;font-weight:600;word-break:break-word}
.canais-lista span{display:block;font-size:.76rem;color:var(--tinta-2)}
.caixa-brasil{background:var(--creme);border:1px solid #EADFC9;padding:18px 20px;display:grid;grid-template-columns:auto 1fr;gap:4px 16px;align-content:start}
.caixa-brasil svg{width:46px;height:46px;color:var(--ouro);grid-row:span 2;stroke-width:1.2}
.caixa-brasil h3{font-size:.86rem;letter-spacing:.1em;text-transform:uppercase}
.caixa-brasil p{grid-column:1/-1;margin-top:6px;font-size:.78rem;color:var(--tinta-2);line-height:1.45}

/* --------------------------------------------------------- área do cliente */
.login-card{flex:none;width:min(410px,100%);background:#fff;color:var(--tinta);border-radius:6px;box-shadow:0 22px 50px rgba(0,0,0,.32);padding:28px 32px;margin-top:4px;margin-bottom:-110px;position:relative;z-index:2}
.login-card h2{font-size:1.6rem}
.login-card>p{margin-top:4px;font-size:.84rem;color:var(--tinta-2)}
.login-form{display:flex;flex-direction:column;gap:12px;margin-top:20px}
.login-campo{display:flex;align-items:center;gap:12px;border:1px solid #D9DCE1;border-radius:3px;padding:0 14px;background:#fff}
.login-campo:focus-within{border-color:var(--ouro);box-shadow:0 0 0 3px rgba(200,150,63,.18)}
.login-campo>svg{width:19px;height:19px;color:var(--tinta-2);flex:none}
.login-campo input{flex:1;min-width:0;border:0;outline:0;font:inherit;font-size:.86rem;padding:12px 0;background:transparent}
.login-olho{color:var(--tinta-2)}
.login-olho svg{width:18px;height:18px}
.login-linha{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.78rem;color:var(--tinta-2)}
.login-lembrar{display:flex;align-items:center;gap:8px;cursor:pointer}
.login-lembrar input{width:18px;height:18px;accent-color:var(--ouro)}
.login-linha a{color:var(--ouro-esc);border-bottom:1px solid var(--ouro)}
.login-ou{display:flex;align-items:center;gap:12px;margin:14px 0;font-size:.82rem;color:var(--tinta-2)}
.login-ou::before,.login-ou::after{content:"";flex:1;height:1px;background:var(--linha)}
.login-card .btn-contorno{font-size:.84rem}
.login-card .btn-contorno svg{width:20px;height:20px}
.sec-portal{padding-top:clamp(20px,2vw,28px)}
.portal-2{display:grid;grid-template-columns:minmax(0,1.95fr) minmax(0,1fr);gap:clamp(20px,2.6vw,40px);align-items:end}
.sec-portal .cab-portal{padding-right:clamp(0px,2vw,30px)}
.cab-portal{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);margin-bottom:22px}
.cab-portal h2{font-size:clamp(1.6rem,2.2vw,2.05rem)}
.cab-portal>p{font-family:var(--sans);font-size:.88rem}
.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.portal-item{display:flex;align-items:center;gap:20px;background:#fff;box-shadow:var(--sombra);padding:18px 18px 18px 20px;border-radius:3px;transition:transform .2s ease,box-shadow .2s ease}
.portal-item:hover{transform:translateY(-3px);box-shadow:var(--sombra-2)}
.portal-ic{color:var(--ouro);flex:none}
.portal-ic svg{width:40px;height:40px;stroke-width:1.2}
.portal-item>span:nth-child(2){flex:1}
.portal-item b{display:block;font-family:var(--serif);font-size:1.02rem}
.portal-item small{display:block;margin-top:2px;font-size:.76rem;line-height:1.4;color:var(--tinta-2)}
.portal-item>svg{width:18px;height:18px;color:var(--ouro);flex:none}
.portal-tablet{width:100%;mix-blend-mode:multiply;margin-right:calc(-1 * var(--gut))}

/* --------------------------------------------------------------- notícias */
.abas{background:#fff;border-bottom:1px solid var(--linha)}
.abas-in{display:flex;gap:clamp(20px,3.2vw,46px);overflow-x:auto;scrollbar-width:none}
.abas-in::-webkit-scrollbar{display:none}
.abas a{flex:none;padding:16px 0 14px;font-size:.86rem;color:var(--tinta);border-bottom:2px solid transparent}
.abas a:hover{color:var(--ouro-esc)}
.abas a.is-active{font-family:var(--serif);font-weight:600;font-size:.98rem;color:var(--ouro-esc);border-bottom-color:var(--ouro)}
.sec-noticias{padding-top:clamp(18px,1.8vw,24px)}
.noticias-2{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:clamp(22px,3vw,40px)}
.noticias-lado{display:flex;flex-direction:column;gap:18px;padding-left:clamp(0px,1.6vw,24px);border-left:1px solid var(--linha)}
.destaque{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:26px;align-items:start;padding-bottom:22px}
.destaque-capa{position:relative;display:block;aspect-ratio:413/218;overflow:hidden;border-radius:3px;box-shadow:var(--sombra);background:var(--navy)}
.destaque-capa img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.destaque-capa:hover img{transform:scale(1.03)}
.selo{position:absolute;left:14px;top:14px;background:var(--ouro-grad);color:#17110A;font-family:var(--serif);font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-radius:2px}
.destaque h2{margin-top:12px;font-size:clamp(1.5rem,2.1vw,1.85rem)}
.destaque h2 a:hover{color:var(--ouro-esc)}
.destaque-txt>p:not(.post-meta){margin-top:10px;font-size:.92rem;line-height:1.55;color:var(--tinta-2)}
.destaque .btn{margin-top:18px}
.post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--tinta-2)}
.post-meta svg{width:14px;height:14px;color:var(--ouro)}
.post-meta i{width:1px;height:12px;background:var(--linha);margin-inline:4px}
.cab-linha{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0 14px}
.cab-linha h2{font-size:1.6rem}
.post-lista{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.post-linha{display:grid;grid-template-columns:40% 1fr;background:#fff;box-shadow:var(--sombra);border-radius:3px;overflow:hidden;min-height:132px}
.post-linha-capa{display:block;overflow:hidden;background:var(--navy)}
.post-linha-capa img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.post-linha:hover .post-linha-capa img{transform:scale(1.05)}
.post-linha-capa.vazia{background:var(--navy) url("../img/marca-branca.png") center/44% no-repeat}
.post-linha>div{padding:12px 12px 14px 14px;min-width:0}
.post-cat{font-family:var(--serif);font-size:.62rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ouro-esc)}
.post-linha .post-meta{margin-top:6px;font-size:.6rem;gap:4px;flex-wrap:nowrap;white-space:nowrap}
.post-linha .post-meta i{margin-inline:2px}
.post-linha .post-meta svg{width:11px;height:11px}
.post-linha h3{margin-top:8px;font-size:.92rem;line-height:1.3;overflow-wrap:anywhere}
.post-linha h3 a:hover{color:var(--ouro-esc)}
.busca{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #DCDFE4;border-radius:4px;padding:0 16px}
.busca svg{width:20px;height:20px;color:var(--ouro);flex:none}
.busca input{flex:1;min-width:0;border:0;outline:0;font:inherit;font-size:.74rem;font-style:italic;padding:14px 0;background:transparent}
.lado-card{background:#fff;box-shadow:var(--sombra);border-radius:4px;padding:20px 22px}
.lado-card h2{font-size:1.4rem;margin-bottom:10px}
.cat-lista li+li{border-top:1px solid #F0ECE5}
.cat-lista a{display:grid;grid-template-columns:26px 1fr auto 16px;align-items:center;gap:14px;padding:9px 0;font-size:.86rem}
.cat-lista a:hover span{color:var(--ouro-esc)}
.cat-lista svg{width:24px;height:24px;color:var(--ouro)}
.cat-lista em{font-size:.76rem;color:var(--tinta-2)}
.cat-lista a>svg:last-child{width:15px;height:15px;color:var(--tinta-2)}
.news-card{position:relative;background:var(--navy-2);color:#fff;border-radius:4px;padding:22px 22px 24px}
.news-card>svg{position:absolute;right:20px;top:18px;width:42px;height:42px;color:var(--ouro);stroke-width:1.2}
.news-card .etiqueta{color:var(--ouro-cl);font-size:.66rem}
.news-card h2{color:#fff;font-size:1.4rem}
.news-card>p:not(.etiqueta){margin-top:8px;font-size:.8rem;line-height:1.5;color:#D2D8E1}
.news-form{display:flex;gap:8px;margin-top:16px}
.news-form input{flex:1;min-width:0;border:0;border-radius:3px;font:inherit;font-size:.76rem;padding:12px}
.news-form .btn{padding:10px 12px;font-size:.86rem;gap:8px}
.news-ok{margin-top:12px;font-size:.82rem;color:var(--ouro-cl)}
.paginacao{display:flex;justify-content:center;gap:8px;margin-top:28px}
.paginacao a,.paginacao span{min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--linha);border-radius:3px;background:#fff;font-size:.86rem}
.paginacao .current{background:var(--ouro-grad);border-color:var(--ouro);color:#17110A}
.vazio{padding:28px;background:#fff;box-shadow:var(--sombra);font-family:var(--serif)}

/* post */
.artigo-2{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:clamp(24px,3.4vw,56px);align-items:start}
.artigo-capa{margin:0 0 26px}
.artigo-capa img{width:100%;border-radius:3px}
.artigo,.texto-legal{font-size:1rem;line-height:1.78;color:var(--tinta-2);max-width:760px}
.artigo>*+*,.texto-legal>*+*{margin-top:1.05em}
.artigo h2,.artigo h3,.texto-legal h2{color:var(--tinta);margin-top:1.6em}
.artigo h2,.texto-legal h2{font-size:1.5rem}
.artigo a{color:var(--ouro-esc);text-decoration:underline}
.artigo ul,.texto-legal ul{list-style:disc;padding-left:1.3em}
.artigo img{border-radius:3px}
.fonte-box{margin-top:30px;padding:18px 20px;background:var(--creme);border-left:2px solid var(--ouro);font-size:.9rem;color:var(--tinta-2)}
.fonte-box .btn{margin-top:12px;padding:9px 16px;font-size:.88rem}
.card-fixo{position:sticky;top:110px}
.trilha-escura{color:var(--tinta-2)}

/* --------------------------------------------------------- painel (dialog) */
.perfil{width:min(980px,calc(100vw - 32px));max-height:calc(100vh - 40px);padding:0;border:0;border-radius:6px;background:#fff;color:var(--tinta);overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.perfil::backdrop{background:rgba(8,19,34,.66)}
.perfil-fechar{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;border:1px solid var(--linha)}
.perfil-fechar svg{width:18px;height:18px}
.perfil-in{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}
.perfil-foto{position:relative;background:var(--navy)}
.perfil-foto img{width:100%;height:100%;min-height:320px;object-fit:cover;object-position:top}
/* C.F.: a foto original é pequena; no perfil ela fica no tamanho do retrato, sem esticar até a altura do painel */
.perfil-foto-contida{display:flex;align-items:center;justify-content:center;padding:32px}
.perfil-foto-contida img{width:100%;max-width:300px;height:auto;min-height:0;aspect-ratio:4/5;border-radius:4px}
.perfil-foto-sol .sol-ico{position:absolute;left:24px;bottom:24px;width:72px;height:72px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--sombra-2)}
.perfil-texto{padding:clamp(26px,3.2vw,44px)}
.perfil-texto h2{font-size:clamp(1.8rem,2.6vw,2.4rem);margin-bottom:14px}
.perfil-texto h3{font-family:var(--serif);font-size:.74rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin:24px 0 12px}
.perfil-bio{font-size:.94rem;line-height:1.7;color:var(--tinta-2)}
.checks{display:flex;flex-direction:column;gap:9px}
.checks li{display:flex;gap:10px;font-size:.9rem;color:var(--tinta-2)}
.checks svg{width:17px;height:17px;flex:none;color:var(--ouro);margin-top:3px}
.perfil-dif{margin-top:20px;padding:14px 16px;background:var(--creme);border-left:2px solid var(--ouro);font-size:.9rem;color:var(--tinta-2)}
.perfil-texto .btn-row{margin-top:22px}

/* ------------------------------------------------------------------ rodapé */
.foot{background:#081322;color:#E8ECF2}
.foot-faixa{display:grid;grid-template-columns:auto repeat(3,auto) auto;align-items:center;justify-content:space-between;gap:clamp(16px,2.4vw,38px);padding-block:22px}
.foot-marca img{width:214px}
.foot-item{display:flex;align-items:flex-start;gap:16px;padding-left:clamp(16px,2.4vw,38px);border-left:1px solid rgba(200,150,63,.5);font-size:.8rem;line-height:1.45}
.foot-item>svg{width:22px;height:22px;flex:none;color:var(--ouro);margin-top:2px}
.foot-item b{display:block;font-weight:500;color:#fff}
.foot-item span{display:block;color:#AEB7C4;font-size:.72rem}
.foot-item a:hover b{color:var(--ouro-cl)}
.foot-redes{padding-left:clamp(16px,2.4vw,38px);border-left:1px solid rgba(200,150,63,.5);gap:18px;margin:0}
.foot-redes svg{width:20px;height:20px}
.foot-bar{border-top:1px solid rgba(255,255,255,.08);font-size:.72rem;color:#AEB7C4}
.foot-bar-in{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:12px}
.foot-legal{display:flex;align-items:center;gap:12px}
.foot-legal i{width:1px;height:12px;background:rgba(255,255,255,.3)}
.foot-legal a:hover{color:var(--ouro-cl)}
.imagine-credit{display:inline-flex;align-items:center;gap:8px;opacity:.55;transition:opacity .2s ease;font-size:.68rem}
.imagine-credit img{width:84px;height:auto}
.imagine-credit:hover{opacity:1}

/* --------------------------------------------------------------- WhatsApp */
.wa-float{position:fixed;right:20px;bottom:20px;z-index:70;width:54px;height:54px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#25D366;color:#fff;box-shadow:0 8px 24px rgba(37,211,102,.36);transition:transform .2s ease}
.wa-float:hover{transform:scale(1.06)}
.wa-float svg{width:28px;height:28px}

/* -------------------------------------------------------------- animação */
.rv{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.rv.in{opacity:1;transform:none}
.progresso{position:fixed;left:0;top:0;height:2px;width:100%;z-index:80;pointer-events:none;transform:scaleX(0);transform-origin:left;background:var(--ouro)}
body.admin-bar .progresso{top:32px}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .rv{opacity:1;transform:none;transition:none}
  .progresso{display:none}
  *{transition:none!important}
}

/* ============================================================ responsivo */
/* Tela mais larga que a caixa do conteúdo: as fotos laterais das faixas
   acompanham o texto (terminam onde ele começa) e não passam de 760px; o que
   sobra à esquerda fica no fundo navy, com a foto fundindo nele. */
@media (min-width:1325px){
  .faixa-cfa-foto,.faixa-cta-cf .faixa-cta-foto,.atuacao-foto{left:auto;right:calc(50% + 250px);width:min(760px,calc(50% - 250px))}
  .faixa-cfa-foto::after{background:linear-gradient(90deg,var(--navy-2),transparent 18%,transparent 45%,var(--navy-2))}
  .faixa-cta-cf .faixa-cta-foto::after{background:linear-gradient(90deg,var(--navy-2),rgba(11,24,40,.15) 18%,var(--navy-2))}
  .atuacao-foto::after{background:linear-gradient(90deg,#fff,transparent 18%,transparent 60%,#fff)}
}
@media (max-width:1400px){
  .metodologia{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}
  .metodo{grid-column:1/-1}
}
@media (max-width:1280px){
  .tb-nav{gap:22px;font-size:.95rem}
  .marca img{width:270px}
  .esp-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .faixa-topo .ft-esq span{display:none}
  .faixa-topo .ft-esq i{display:none}
}
@media (max-width:1160px){
  .tb-nav,.tb-cta{display:none}
  .burger{display:inline-flex}
  .heroi-lista{display:none}
  .cab-3{grid-template-columns:1fr 1fr}
  .cab-3 .link-caixa{grid-column:1/-1;justify-self:start}
  .sol-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .faixa-ic{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fi-item:nth-child(3)::before{display:none}
  .fi-item:nth-child(3){padding-left:0}
  .faixa-ic:not(.faixa-ic-escura) .fi-item:nth-child(3){padding-left:clamp(18px,2.4vw,34px)}
  .faixa-passos-in{grid-template-columns:1fr}
  .fp-cta{border:0;padding:0;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
  .fp-cta p{margin:0}
  .metodologia{grid-template-columns:1fr 1fr}
  .metodo{grid-column:1/-1}
  .cfa-3{grid-template-columns:1fr 1fr}
  .cfa-quem{grid-column:1/-1;padding-right:0}
  .atuacao-in{grid-template-columns:1fr 1fr;padding-left:max(var(--gut),32%)}
  .atuacao-mapa{display:none}
  .noticias-2{grid-template-columns:1fr}
  .noticias-lado{border:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .busca{grid-column:1/-1}
  .post-lista{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portal-2{grid-template-columns:1fr}
  .portal-tablet{max-width:520px;justify-self:center;margin:0}
  .foot-faixa{grid-template-columns:1fr 1fr;justify-content:stretch}
  .foot-marca{grid-column:1/-1}
  .foot-item:nth-of-type(2n+1),.foot-item{border:0;padding:0}
  .foot-redes{border:0;padding:0}
  .artigo-2{grid-template-columns:1fr}
  .card-fixo{position:static}
}
@media (max-width:900px){
  .heroi-foto,.heroi-esp .heroi-foto,.heroi-area .heroi-foto,.heroi-noticias .heroi-foto{width:100%}
  .heroi-foto::after{background:linear-gradient(90deg,rgba(11,24,40,.92),rgba(11,24,40,.7))}
  .heroi-area .heroi-in{flex-direction:column;align-items:stretch}
  .login-card{margin:0 auto -60px;width:100%;max-width:460px}
  .sec-portal{padding-top:90px}
  .faixa-cfa-foto,.faixa-cta-cf .faixa-cta-foto,.atuacao-foto{position:relative;width:100%;height:200px}
  .faixa-cfa-foto::after{background:linear-gradient(0deg,var(--navy-2),transparent 60%)}
  .faixa-cta-cf .faixa-cta-foto::after{background:linear-gradient(0deg,var(--navy-2),transparent 60%)}
  .atuacao-foto::after{background:linear-gradient(0deg,#fff,transparent 60%)}
  .faixa-cfa-in,.faixa-cta-cf .faixa-cta-in,.atuacao-in{padding-left:var(--gut)}
  .faixa-cfa-in{grid-template-columns:1fr}
  .faixa-cfa-txt{border:0;padding:0}
  .faixa-cta-in,.faixa-cta-txt{flex-direction:column;align-items:flex-start}
  .faixa-cta-txt p{border:0;padding:0}
  .contato-2{grid-template-columns:1fr}
  .contato-lado{border:0;padding:0}
  .cab-2,.cab-portal{grid-template-columns:1fr;gap:12px}
  .esp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .destaque{grid-template-columns:1fr}
  .portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  body{font-size:14.5px}
  .faixa-topo .ft-dir{display:none}
  .faixa-topo-in{justify-content:center}
  .topbar-in{min-height:70px}
  .marca img{width:220px}
  .heroi h1{font-size:2rem}
  .heroi-in{min-height:0}
  .heroi .btn{white-space:normal;text-align:left}
  .cab-3,.faixa-ic,.sol-grid,.post-lista,.portal-grid,.esp-grid,.noticias-lado,.opcoes,.canais,.cfa-3,.metodologia,.atuacao-in,.foot-faixa{grid-template-columns:1fr}
  .fi-item,.fi-item:first-child,.faixa-ic:not(.faixa-ic-escura) .fi-item{padding:16px 0}
  .fi-item+.fi-item::before{display:none}
  .faixa-ic:not(.faixa-ic-escura){padding-inline:18px}
  .fi-item+.fi-item{border-top:1px solid rgba(200,150,63,.35)}
  .passos{grid-template-columns:1fr}
  .passos li+li::before{display:none}
  .metodo{grid-template-columns:1fr 1fr;row-gap:18px}
  .metodo li:nth-child(3){border-left:0}
  .form{grid-template-columns:1fr}
  .numeros{border:0;padding:0}
  .perfil-in{grid-template-columns:1fr}
  .perfil-foto img{min-height:0;aspect-ratio:4/3}
  .perfil-foto-contida{padding:20px}
  .perfil-foto-contida img{aspect-ratio:4/5;max-width:200px}
  .btn{white-space:normal}
  .foot-legal{flex-wrap:wrap}
}

/* ------------------------------------------------- peças só do WordPress */
.destaque-capa.vazia,.post-linha-capa.vazia{background:var(--navy) url("../img/marca-branca.png") center/34% no-repeat}
.heroi-post{padding-block:clamp(34px,3.6vw,54px)}
.heroi-post h1{font-size:clamp(1.8rem,2.8vw,2.6rem);max-width:30ch}
.heroi-post .post-meta{margin-top:16px;color:#D7DDE6}
.heroi-simples .trilha a,.heroi-simples .trilha span{color:#E5E9EF}
.heroi-simples .trilha a:hover{color:var(--ouro-cl)}
.sec-relacionados{background:var(--creme);padding-block:clamp(30px,3vw,44px)}
.card-fixo .news-card h2{max-width:none}
.news-card h2{max-width:none;font-size:1.35rem}
.artigo-2 aside .btn-linha svg{color:#25D366}

/* Pedido do Jairo (27/10): o topo de todas as páginas na mesma altura, para a troca de página não «pular». */
@media (min-width:901px){
  .heroi-in,.heroi-noticias .heroi-in,.heroi-area .heroi-in{min-height:480px}
}

/* ---------------------------------------------------------------------------
   Vídeo do Jairo, 27/10 17:26 — «mantenha um padrão de tamanho»
--------------------------------------------------------------------------- */

/* Cartões de solução: todas as linhas da grade com a mesma altura, título
   sempre em duas linhas (a área de texto ganhou largura para caber), resumo
   sempre em três. A seta fica no pé, no mesmo lugar em todos. */
.sol-grid{grid-auto-rows:1fr}
.sol-corpo{gap:12px;padding:16px 16px 40px 16px}
.sol-ico svg{width:32px;height:32px}
.sol-nome{font-size:1rem;min-height:2.4em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sol-curto{min-height:4.26em}

/* Cartões de especialista: nome em até duas linhas, cargo em até duas, resumo
   cortado em cinco (o texto inteiro está no perfil que o cartão abre). Assim
   foto, nome, cargo, texto e o «Conheça» começam na mesma altura em todos. */
.esp-grid{grid-auto-rows:1fr}
.esp-corpo h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.esp-cargo{min-height:2.7em}
.esp-txt{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}

/* A faixa «Agende uma conversa estratégica» é a mesma em A CFA, Especialistas
   e Soluções: mesma altura, mesmo texto, mesmo fundo. */
.faixa-cta-cf .faixa-cta-in{min-height:200px}

/* Soluções: o botão «Falar com um especialista» saiu da faixa dos passos — a
   chamada agora é a faixa padrão logo abaixo. */
.faixa-passos-sem-cta .faixa-passos-in{grid-template-columns:minmax(0,1fr) minmax(0,2.2fr)}
.faixa-passos-sem-cta + .faixa-cta{border-top:1px solid rgba(200,150,63,.35)}

/* A CFA: a atuação perdeu a foto da recepção (repetia o CF da faixa logo
   abaixo) e ocupa a largura toda, centrada. */
.atuacao-centro .atuacao-in{padding-left:var(--gut);grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr) minmax(0,1fr);gap:clamp(24px,3.4vw,56px)}

/* Área do Cliente: o cartão de login no meio do topo, e não pendurado para
   fora dele nem colado no menu («mais centralizadinho», «não tão colado»). */
.login-card{margin-block:0;align-self:center}

@media (max-width:1100px){
  .faixa-passos-sem-cta .faixa-passos-in{grid-template-columns:1fr}
}
@media (max-width:900px){
  .atuacao-centro .atuacao-in{grid-template-columns:1fr 1fr}
  .login-card{margin:0 auto}
}
@media (max-width:560px){
  .atuacao-centro .atuacao-in{grid-template-columns:1fr}
  .sol-grid,.esp-grid{grid-auto-rows:auto}
}
