/* Augusto França Estratégia e Gestão — folha de estilo única do site.
   Organização: fontes > tokens > base > superfícies > componentes > páginas > utilitários.
   As superfícies (.faixa--escura, --nevoa, --branca) definem as variáveis de cor;
   os componentes só usam essas variáveis, por isso funcionam em qualquer fundo. */

/* ---------- Fontes: Akira hospedada no próprio site; Arial é do sistema ---------- */
@font-face{font-family:"Akira Expanded";src:url("/assets/fontes/akira-expanded-bold.woff") format("woff");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Akira Expanded";src:url("/assets/fontes/akira-expanded-superbold.woff") format("woff");font-weight:800;font-style:normal;font-display:swap}

/* ---------- Tokens ---------- */
:root{
  --marinho:#020449;
  --marinho-profundo:#01022B;
  --marinho-claro:#0B1263;
  --ouro:#D3AF37;
  --ouro-escuro:#7D5F0C;
  --nevoa:#EEF0F6;
  --branco:#FFFFFF;
  --prata:#B3B8DD;
  --grafite:#464B77;
  --linha-clara:#D3D7E6;
  --linha-escura:#232A80;
  --ouro-claro:#F3DC8A;        /* ouro para texto pequeno sobre as cores dos setores (5:1 ou mais) */

  /* Cores dos setores: escura (fundo com texto branco), clara (fundo de painel),
     texto secundário sobre a escura e uma versão viva para marcadores no marinho. */
  --tijolo:#9A3B1B;--tijolo-claro:#F8E9E2;--tijolo-texto2:#F2D3C6;--tijolo-vivo:#E07A52;
  --garrafa:#1B5843;--garrafa-claro:#E5F0EA;--garrafa-texto2:#CBE3D6;--garrafa-vivo:#4FAE8A;
  --petroleo:#0B5D6B;--petroleo-claro:#E2EFF2;--petroleo-texto2:#C5E2E8;--petroleo-vivo:#3FAFC1;
  --vinho:#832440;--vinho-claro:#F6E6EB;--vinho-texto2:#EBC9D3;--vinho-vivo:#D46A88;

  --fonte-display:"Akira Expanded","Arial Black",Arial,sans-serif;
  --fonte-texto:Arial,"Helvetica Neue",Helvetica,"Liberation Sans",Arimo,sans-serif;

  --raio:6px;
  --largura:1200px;
  --margem-lateral:clamp(16px,4vw,40px);
  --respiro:clamp(72px,9vw,136px);
  --cabecalho:72px;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--cabecalho) + 16px)}
body{margin:0;font-family:var(--fonte-texto);font-size:clamp(1rem,.96rem + .2vw,1.125rem);line-height:1.6;
  color:var(--marinho);background:var(--branco);-webkit-font-smoothing:antialiased;overflow-x:clip}
[hidden]{display:none!important}
img,svg{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}
ul,ol{padding:0}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--foco,var(--marinho));outline-offset:3px;border-radius:2px}
::selection{background:var(--ouro);color:var(--marinho)}

.pular{position:absolute;left:16px;top:-60px;z-index:100;background:var(--ouro);color:var(--marinho);padding:10px 16px;border-radius:var(--raio);font-weight:600;text-decoration:none}
.pular:focus{top:12px}
.visualmente-oculto{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* Ícone antes dos canais de contato, na cor do texto; inline-block para não herdar o sublinhado do link. */
.simbolo{display:inline-block;flex:none;width:1.05em;height:1.05em;margin-right:.55em;vertical-align:-.17em;text-decoration:none}
.simbolo svg{width:100%;height:100%}
/* Dourado de destaque da superfície: ouro no fundo escuro, ouro escuro no claro (o ouro claro some no branco). */
.simbolo{color:var(--destaque,var(--ouro-escuro))}

/* ---------- Superfícies ---------- */
.faixa{--fundo:var(--branco);--texto:var(--marinho);--texto-2:var(--grafite);--linha:var(--linha-clara);--destaque:var(--ouro-escuro);--foco:var(--marinho);
  --acento:var(--ouro);--acento-txt:var(--ouro-escuro);--trilho:#C9CEDF;
  background:var(--fundo);color:var(--texto);padding-block:var(--respiro);position:relative}
.faixa--nevoa{--fundo:var(--nevoa)}
.faixa--escura,.cabecalho,.rodape,.menu-movel{--fundo:var(--marinho);--texto:var(--branco);--texto-2:var(--prata);--linha:var(--linha-escura);--destaque:var(--ouro);--foco:var(--ouro);
  --acento:var(--ouro);--acento-txt:var(--ouro);--trilho:rgba(255,255,255,.22)}
.faixa--escura{background:var(--marinho)}
.faixa--colada{padding-top:0}
.contem{width:100%;max-width:calc(var(--largura) + 2 * var(--margem-lateral));margin-inline:auto;padding-inline:var(--margem-lateral)}

/* ---------- Tipografia ---------- */
/* Manual da marca: textos em Arial; títulos curtos (classe titulo--curto, posta pelo gerador) e números em Akira Expanded; títulos longos em Arial negrito. */
.display{font-family:var(--fonte-texto);font-weight:700;letter-spacing:-.02em;line-height:1.08;overflow-wrap:break-word}
.display--1{font-size:clamp(2rem,1.3rem + 2.6vw,3.5rem);max-width:20ch}
.display--2{font-size:clamp(1.35rem,1rem + 1.7vw,2.25rem)}
.titulo{font-weight:700;font-size:clamp(1.75rem,1.2rem + 2.2vw,2.875rem);line-height:1.15;letter-spacing:-.012em;max-width:22ch}
.titulo--largo{max-width:30ch}
.subtitulo{font-weight:700;font-size:clamp(1.25rem,1.1rem + .6vw,1.5rem);line-height:1.3;letter-spacing:-.005em}
.titulo.titulo--curto,.display.titulo--curto,.titulo-principal.titulo--curto{font-family:var(--fonte-display);font-weight:800;text-transform:uppercase;letter-spacing:.01em;line-height:1.2;overflow-wrap:break-word}
.titulo.titulo--curto{font-size:clamp(1.35rem,1rem + 1.6vw,2.25rem)}
.display--1.titulo--curto{font-size:clamp(1.6rem,1rem + 2.4vw,2.875rem)}
.titulo-principal.titulo--curto{font-size:clamp(1.8rem,1.1rem + 2.6vw,3rem)}
.lead{font-size:clamp(1.0625rem,1rem + .4vw,1.25rem);line-height:1.55;color:var(--texto-2);max-width:60ch}
.texto-2{color:var(--texto-2)}
.miudo{font-size:.875rem;line-height:1.5;color:var(--texto-2)}
.prosa{max-width:66ch}
.prosa > * + *{margin-top:1em}
.prosa a,.link{color:var(--texto);text-decoration-line:underline;text-decoration-color:var(--destaque);text-decoration-thickness:2px;text-underline-offset:4px}
.prosa a:hover,.link:hover{color:var(--destaque)}
.numeros{font-variant-numeric:lining-nums tabular-nums}

.cabeca-secao{display:grid;gap:20px;margin-bottom:clamp(40px,5vw,64px)}
.cabeca-secao--dividida{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:end;column-gap:64px}

/* ---------- Botões ---------- */
.botao{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 24px;border-radius:var(--raio);
  font-weight:600;font-size:1.0625rem;line-height:1.2;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.botao--principal{background:var(--marinho);color:var(--branco)}
.botao--principal:hover{background:var(--marinho-claro)}
.faixa--escura .botao--principal,.cabecalho .botao--principal,.menu-movel .botao--principal,.barra-fixa .botao--principal{background:var(--ouro);color:var(--marinho)}
.faixa--escura .botao--principal:hover,.cabecalho .botao--principal:hover,.menu-movel .botao--principal:hover,.barra-fixa .botao--principal:hover{background:#E4C45A}
.botao--contorno{background:transparent;color:var(--texto);border-color:currentColor}
.botao--contorno:hover{color:var(--destaque)}
.botao svg{width:20px;height:20px;flex:none}
.acoes{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center}

/* ---------- Cabeçalho ---------- */
.cabecalho{position:sticky;top:0;z-index:40;background:var(--marinho);color:var(--texto);border-bottom:1px solid var(--linha)}
.cabecalho__linha{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:var(--cabecalho)}
.marca{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--branco)}
.marca__simbolo{width:44px;height:30px;flex:none;background:currentColor;-webkit-mask:url("/assets/img/af-monograma.png") center/contain no-repeat;mask:url("/assets/img/af-monograma.png") center/contain no-repeat}
.marca__nome{display:grid;line-height:1.1}
.marca__nome b{font-family:var(--fonte-display);font-weight:700;font-size:.8125rem;letter-spacing:.02em}
.marca__nome{gap:3px}
.marca__nome span{font-family:var(--fonte-texto);font-size:.625rem;text-transform:uppercase;letter-spacing:.03em;line-height:1}
.navegacao{display:flex;align-items:center;gap:6px}
.navegacao__item{position:relative}
.navegacao__link{display:inline-flex;align-items:center;gap:6px;padding:10px 12px;border-radius:var(--raio);color:var(--prata);text-decoration:none;font-weight:500;font-size:1rem;background:none;border:0;cursor:pointer}
.navegacao__link:hover,.navegacao__link[aria-expanded="true"],.navegacao__link[aria-current]{color:var(--branco)}
.navegacao__link[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--ouro);text-underline-offset:8px;text-decoration-thickness:2px}
.navegacao__link svg{width:14px;height:14px;transition:transform .2s}
.navegacao__link[aria-expanded="true"] svg{transform:rotate(180deg)}
.navegacao .botao{margin-left:10px;min-height:44px;padding:10px 18px;font-size:1rem}
.submenu{position:absolute;top:calc(100% + 10px);left:-12px;width:min(520px,80vw);padding:10px;background:var(--marinho-profundo);border:1px solid var(--linha);border-radius:var(--raio);box-shadow:0 24px 48px rgba(1,2,43,.45);list-style:none}
.submenu[hidden]{display:none}
.submenu a{display:grid;gap:2px;padding:12px 14px;border-radius:4px;text-decoration:none}
.submenu a:hover,.submenu a:focus-visible{background:var(--marinho-claro)}
.submenu b{font-weight:600;color:var(--branco)}
.submenu span{font-size:.9375rem;color:var(--prata);line-height:1.4}
.abre-menu{display:none;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1.5px solid var(--linha);border-radius:var(--raio);background:none;color:var(--branco);font-weight:600;cursor:pointer}
.abre-menu svg{width:20px;height:20px}

.menu-movel{position:fixed;inset:0;z-index:60;background:var(--marinho);color:var(--texto);overflow-y:auto;padding:0 var(--margem-lateral) 32px}
.menu-movel[hidden]{display:none}
.menu-movel__topo{display:flex;align-items:center;justify-content:space-between;min-height:var(--cabecalho);border-bottom:1px solid var(--linha);margin-bottom:12px}
.menu-movel nav ul{list-style:none}
.menu-movel nav a{display:block;padding:14px 0;border-bottom:1px solid var(--linha);text-decoration:none;font-size:1.25rem;font-weight:600}
.menu-movel nav .menu-movel__grupo{padding-top:20px;font-size:.875rem;color:var(--prata)}
.menu-movel .acoes{margin-top:28px;flex-direction:column;align-items:stretch}
body.sem-rolagem{overflow:hidden}
.menu-movel .abre-menu{display:inline-flex}

/* ---------- Primeiro quadro ---------- */
.abertura{padding-top:clamp(40px,5vw,72px);padding-bottom:clamp(56px,7vw,104px);overflow:hidden}
.abertura__grade{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);grid-template-areas:"texto painel" "acoes painel";grid-template-rows:auto 1fr;column-gap:clamp(40px,6vw,88px);align-items:start}
.abertura__texto{grid-area:texto}
.abertura__paineis{grid-area:painel}
.abertura__acoes{grid-area:acoes}
.abertura h1{margin-bottom:24px}
.abertura .lead{margin-bottom:32px}
.abertura__acoes{margin-top:32px;align-self:start}
.abertura--setor .abertura__grade{align-items:center}

/* Seletor de setor (abas) */
.seletor__rotulo{font-weight:600;margin-bottom:12px}
.seletor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.seletor__aba{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;padding:13px 16px;line-height:1.3;border-radius:var(--raio);border:1.5px solid var(--linha);
  background:transparent;color:var(--prata);font-weight:600;font-size:1.0625rem;text-align:left;cursor:pointer;transition:border-color .2s,color .2s,background-color .2s}
.seletor__aba:hover{color:var(--branco);border-color:#3A42A0}
.seletor__aba[aria-selected="true"]{color:var(--branco);border-color:var(--ouro);background:rgba(211,175,55,.07)}
.seletor__marcador{width:10px;height:10px;border-radius:50%;border:1.5px solid currentColor;flex:none;margin-top:5px}
.seletor__aba[aria-selected="true"] .seletor__marcador{background:var(--ouro);border-color:var(--ouro)}

/* Painel: o instrumento do primeiro quadro */
.painel{border:1px solid var(--linha);border-radius:var(--raio);background:linear-gradient(180deg,rgba(11,18,99,.65),rgba(2,4,73,.2));padding:clamp(20px,2.6vw,32px)}
.painel[hidden]{display:none}
.painel__topo{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--linha);margin-bottom:18px}
.painel__titulo{font-weight:600;font-size:1rem;color:var(--texto)}
.painel__nota{font-size:.8125rem;color:var(--texto-2);font-style:italic;white-space:nowrap}
.painel__pergunta{font-weight:600;font-size:clamp(1.25rem,1.1rem + .6vw,1.5rem);line-height:1.3;margin-top:22px;color:var(--texto)}
.painel__texto{margin-top:10px;color:var(--texto-2);font-size:1.0625rem}
.painel__link{display:inline-block;margin-top:16px;font-weight:600}

/* ---------- Gráficos (SVG em linha) ---------- */
.grafico{width:100%;height:auto;overflow:visible;font-family:var(--fonte-texto);font-variant-numeric:lining-nums tabular-nums}
.grafico text{fill:var(--texto-2);font-size:14px}
.grafico .g-forte{fill:var(--texto);font-weight:600}
.grafico .g-ouro-txt{fill:var(--acento-txt)}
.grafico .g-eixo{stroke:var(--linha);stroke-width:1}
.grafico .g-tique{stroke:var(--texto-2);stroke-width:1;opacity:.6}
.grafico .g-grade{stroke:var(--linha);stroke-width:1;stroke-dasharray:2 4}
.grafico .g-linha{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.grafico .g-linha--ouro{stroke:var(--acento)}
.grafico .g-linha--prata{stroke:var(--texto-2);stroke-dasharray:1 0}
.grafico .g-linha--tracejada{stroke-dasharray:6 6}
.grafico .g-area{fill:var(--acento);opacity:.16}
.grafico .g-barra{fill:var(--texto-2);opacity:.55}
.grafico .g-barra--ouro{fill:var(--acento);opacity:1}
.grafico .g-limite{stroke:var(--acento);stroke-width:1.5;stroke-dasharray:5 5}
.grafico .g-no{fill:var(--fundo);stroke:var(--texto-2);stroke-width:1.5}
.grafico .g-no--ouro{stroke:var(--acento);stroke-width:2}
.grafico .g-ligacao{fill:none;stroke:var(--texto-2);stroke-width:1.5}
.grafico .g-hachura{fill:url(#hachura)}
.grafico .g-seg{stroke:var(--fundo);stroke-width:2}
.faixa:not(.faixa--escura) .grafico .g-area{opacity:.22}
.grafico .g-ouro-fill{fill:var(--acento)}
.grafico .g-faixa-ouro{fill:var(--acento);opacity:.07}
.grafico .g-hachura{stroke:var(--acento);stroke-width:1.5}
/* Atrasos das animações (classes, porque a CSP não permite estilo em linha) */
.d0{--atraso:0s}.d1{--atraso:.1s}.d2{--atraso:.2s}.d3{--atraso:.3s}.d4{--atraso:.4s}.d5{--atraso:.5s}.d6{--atraso:.6s}.d7{--atraso:.7s}
.d8{--atraso:.8s}.d9{--atraso:.9s}.d10{--atraso:1s}.d11{--atraso:1.1s}.d12{--atraso:1.2s}.d13{--atraso:1.3s}.d14{--atraso:1.4s}

/* Animação: só quando o gráfico entra em vista ou troca de setor.
   As linhas usam pathLength="1", então dasharray 1 desenha o traço inteiro. */
@media (prefers-reduced-motion:no-preference){
  .js .grafico .g-desenha{stroke-dasharray:1;stroke-dashoffset:1}
  .js .grafico .g-surge{opacity:0}
  .js .grafico .g-cresce{transform:scaleY(0);transform-box:fill-box;transform-origin:50% 100%}
  .js .grafico .g-estica{transform:scaleX(0);transform-box:fill-box;transform-origin:0 50%}
  .js .grafico.em-vista .g-desenha{animation:g-desenhar 1.5s cubic-bezier(.45,.05,.2,1) forwards;animation-delay:var(--atraso,0s)}
  .js .grafico.em-vista .g-surge{animation:g-surgir .6s ease-out forwards;animation-delay:var(--atraso,1.1s)}
  .js .grafico.em-vista .g-cresce{animation:g-crescer .7s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:var(--atraso,0s)}
  .js .grafico.em-vista .g-estica{animation:g-esticar .9s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:var(--atraso,0s)}
}
@keyframes g-desenhar{to{stroke-dashoffset:0}}
@keyframes g-surgir{to{opacity:1}}
@keyframes g-crescer{to{transform:scaleY(1)}}
@keyframes g-esticar{to{transform:scaleX(1)}}
.g-linha--tracejada.g-desenha{stroke-dasharray:6 6}

.legenda{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:14px;font-size:.875rem;color:var(--texto-2);list-style:none}
.legenda li{display:inline-flex;align-items:center;gap:8px}
.legenda i{display:inline-block;width:22px;height:3px;border-radius:2px;background:var(--texto-2)}
.legenda i.l-ouro{background:var(--acento)}
.legenda i.l-area{height:12px;width:16px;background:var(--acento);opacity:.45}
.legenda i.l-tracejada{background:repeating-linear-gradient(90deg,var(--texto-2) 0 5px,transparent 5px 9px)}
.legenda i.l-hachura{height:12px;width:16px;background:repeating-linear-gradient(45deg,var(--ouro) 0 2px,transparent 2px 5px)}
.legenda i.l-s1,.legenda i.l-s2,.legenda i.l-s3,.legenda i.l-s4{height:12px;width:16px}
.legenda i.l-s1{background:#CDD0EC}.legenda i.l-s2{background:#A9AEDC}.legenda i.l-s3{background:#7F86C6}.legenda i.l-s4{background:#5A62B0}

/* ---------- Ficha do escritório ---------- */
.ficha{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.ficha > div{padding:24px 24px 24px 0}
.ficha > div + div{padding-left:24px;border-left:1px solid var(--linha)}
.ficha dt{font-size:.875rem;color:var(--texto-2);margin-bottom:6px}
.ficha dd{font-weight:600;line-height:1.35}
.ficha dd small{display:block;font-weight:400;font-size:.9375rem;color:var(--texto-2);margin-top:2px}
.ficha-faixa{padding-block:clamp(32px,4vw,48px)}

/* ---------- Setores (linhas, não cartões) ---------- */
.setores{list-style:none;border-top:1px solid var(--linha)}
.setor{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1.1fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);padding-block:clamp(28px,3.4vw,44px);border-bottom:1px solid var(--linha);align-items:start}
.setor__foto{aspect-ratio:4/5;border-radius:var(--raio);overflow:hidden;background:var(--linha)}
.setor__foto img{width:100%;height:100%;object-fit:cover}
.setor h3{margin-bottom:10px}
.setor__pergunta{color:var(--texto-2)}
.setor__entregas{list-style:none;display:grid;gap:10px}
.setor__entregas li{position:relative;padding-left:22px}
.setor__entregas li::before{content:"";position:absolute;left:0;top:.7em;width:10px;height:2px;background:var(--destaque)}
.setor__acao{display:inline-block;margin-top:18px}

/* ---------- Ficha de obra (prova) ---------- */
.prova__grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,88px);align-items:start}
.tabela-ficha{width:100%;border-collapse:collapse}
.tabela-ficha caption{text-align:left;font-weight:600;padding-bottom:14px;color:var(--texto)}
.tabela-ficha th,.tabela-ficha td{padding:16px 0;border-top:1px solid var(--linha);text-align:left;vertical-align:baseline}
.tabela-ficha tr:last-child th,.tabela-ficha tr:last-child td{border-bottom:1px solid var(--linha)}
.tabela-ficha th{font-weight:400;color:var(--texto-2);padding-right:16px}
.tabela-ficha td{text-align:right;font-family:var(--fonte-display);font-weight:700;font-size:clamp(1.15rem,1rem + .8vw,1.6rem);color:var(--ouro);white-space:nowrap}
.nota-evento{margin-top:40px;padding-top:28px;border-top:1px solid var(--linha)}

/* ---------- Camadas de serviço ---------- */
.camadas{display:grid;gap:12px}
.camada{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(20px,4vw,56px);padding:clamp(24px,3vw,36px);border-radius:var(--raio);background:var(--branco);border:1px solid var(--linha)}
.camada--estrategia{background:var(--marinho);border-color:var(--marinho);--texto:var(--branco);--texto-2:var(--prata);--destaque:var(--ouro);color:var(--branco)}
.camada--gestao{background:#DDE1EE;border-color:#DDE1EE}
.camada__nome{display:grid;gap:8px;align-content:start}
.camada__nivel{font-size:.875rem;color:var(--texto-2)}
.camada__servicos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 36px;list-style:none}
.camada__servicos b{display:block;font-weight:600;margin-bottom:4px}
.camada__servicos span{color:var(--texto-2);font-size:1rem;line-height:1.5}

/* ---------- Método (sequência real) ---------- */
.metodo{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;counter-reset:passo;border-top:2px solid var(--marinho)}
.faixa--escura .metodo{border-top-color:var(--ouro)}
.metodo li{counter-increment:passo;padding:28px 28px 0 0;position:relative}
.metodo li + li{padding-left:28px;border-left:1px solid var(--linha)}
.metodo li::before{content:counter(passo);display:block;font-family:var(--fonte-display);font-weight:800;font-size:1.5rem;color:var(--destaque);margin-bottom:14px}
.metodo h3{margin-bottom:8px}
.metodo p{color:var(--texto-2);font-size:1rem}
.metodo .metodo__prazo{display:block;margin-top:10px;font-size:.875rem;font-weight:600;color:var(--texto)}

/* ---------- Sigilo ---------- */
.compromissos{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 56px}
.compromissos li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:16px}
.compromissos svg{width:28px;height:28px;color:var(--destaque);margin-top:2px}
.compromissos b{display:block;font-weight:600;margin-bottom:4px}
.compromissos span{color:var(--texto-2);font-size:1rem}

/* ---------- Conteúdo (lista de artigos) ---------- */
.artigos{list-style:none;border-top:1px solid var(--linha)}
.artigos li{border-bottom:1px solid var(--linha)}
.artigos a{display:grid;grid-template-columns:minmax(0,160px) minmax(0,1fr);gap:clamp(16px,3vw,40px);padding-block:26px;text-decoration:none}
.artigos__meta{font-size:.9375rem;color:var(--texto-2)}
.artigos__meta b{display:block;color:var(--destaque);font-weight:600}
.artigos h3{font-weight:600;font-size:clamp(1.2rem,1.1rem + .4vw,1.4rem);line-height:1.3;margin-bottom:6px}
.artigos a:hover h3{text-decoration:underline;text-decoration-color:var(--destaque);text-underline-offset:4px}
.artigos p{color:var(--texto-2);font-size:1rem}
.artigos__vazio{padding-block:26px;color:var(--texto-2)}

/* ---------- Depoimentos (desligado até existirem depoimentos reais) ---------- */
.depoimentos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.depoimento blockquote{font-size:1.25rem;line-height:1.5}
.depoimento figcaption{margin-top:14px;color:var(--texto-2);font-size:.9375rem}

/* ---------- Contato e formulário ---------- */
.contato__grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(40px,6vw,96px);align-items:start}
.proximos{list-style:none;counter-reset:prox;margin-top:32px;display:grid;gap:18px}
.proximos li{counter-increment:prox;display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;align-items:baseline}
.proximos li::before{content:counter(prox);font-family:var(--fonte-display);font-weight:800;color:var(--destaque)}
.proximos b{font-weight:600}
.canais{margin-top:36px;padding-top:28px;border-top:1px solid var(--linha);display:grid;gap:14px}
.canais a{font-weight:600}
.formulario{display:grid;gap:18px;padding:clamp(24px,3vw,40px);border-radius:var(--raio);background:var(--branco);color:var(--marinho);
  --texto:var(--marinho);--texto-2:var(--grafite);--linha:var(--linha-clara);--destaque:var(--ouro-escuro);--foco:var(--marinho)}
.formulario__titulo{font-weight:600;font-size:1.375rem}
.campos-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.campo{display:grid;gap:6px}
.campo label{font-weight:600;font-size:1rem}
.campo .opcional{font-weight:400;color:var(--grafite)}
.campo input,.campo select,.campo textarea{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid #737AA8;border-radius:var(--raio);background:var(--branco);font-size:1.0625rem}
.campo textarea{min-height:110px;resize:vertical}
.campo select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23020449' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px}
.campo input:focus-visible,.campo select:focus-visible,.campo textarea:focus-visible{outline:3px solid var(--marinho);outline-offset:1px;border-color:var(--marinho)}
.campo [aria-invalid="true"]{border-color:#B42318}
.campo__erro{color:#B42318;font-size:.9375rem}
.campo__erro:empty{display:none}
.marcar{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;font-size:1rem}
.marcar input{width:20px;height:20px;margin:3px 0 0;accent-color:var(--marinho)}
.aviso-privacidade{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;font-size:.9375rem;color:var(--grafite);line-height:1.5}
.aviso-privacidade svg{width:18px;height:18px;margin-top:2px}
.aviso-privacidade a{color:var(--marinho)}
.formulario .botao{width:100%}
.formulario__status{font-weight:600}
.formulario__status:empty{display:none}
.formulario__status[data-tipo="erro"]{color:#B42318}
.formulario__ok{display:grid;gap:12px;padding:8px 0}
.formulario__ok[hidden]{display:none}
.isca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- Páginas de setor ---------- */
.foto-faixa{position:relative;aspect-ratio:21/8;max-height:560px;width:100%;overflow:hidden;background:var(--marinho)}
.foto-faixa img{width:100%;height:100%;object-fit:cover}
.foto-faixa figcaption{position:absolute;right:var(--margem-lateral);bottom:12px;font-size:.75rem;color:rgba(255,255,255,.75)}
.dores{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,56px);border-top:2px solid var(--marinho);padding-top:28px}
.dores h3{margin-bottom:10px}
.dores p{color:var(--texto-2)}
.entregas{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;border-top:1px solid var(--linha)}
.entregas li{padding-block:24px;border-bottom:1px solid var(--linha)}
.entregas b{display:block;font-weight:600;font-size:1.125rem;margin-bottom:6px}
.entregas span{color:var(--texto-2)}

.relatorio{border:1px solid var(--linha);border-radius:var(--raio);background:var(--branco);overflow:hidden}
.relatorio__topo{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:18px 22px;border-bottom:1px solid var(--linha);background:var(--nevoa)}
.relatorio__topo b{font-weight:600}
.relatorio__rolagem{overflow-x:auto}
.relatorio table{width:100%;border-collapse:collapse;font-variant-numeric:lining-nums tabular-nums;min-width:560px}
.relatorio th,.relatorio td{padding:14px 22px;text-align:left;border-bottom:1px solid var(--linha);font-size:1rem}
.relatorio thead th{font-weight:600;font-size:.875rem;color:var(--grafite)}
.relatorio tbody tr:last-child td,.relatorio tbody tr:last-child th{border-bottom:0}
.relatorio tbody th{font-weight:600}
.relatorio .num{text-align:right}
.barrinha{display:flex;align-items:center;gap:10px}
.barrinha__trilho{flex:1;height:6px;border-radius:3px;background:var(--nevoa);overflow:hidden;min-width:60px}
.barrinha__valor{display:block;height:100%;background:var(--marinho);border-radius:3px}
.estado{display:inline-flex;align-items:center;gap:8px;font-size:.9375rem}
.estado::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.estado--ok{color:#1E6B3A}
.estado--atencao{color:#8A5A00}
.estado--alerta{color:#B42318}
.relatorio__nota{padding:14px 22px;font-size:.875rem;color:var(--grafite);border-top:1px solid var(--linha);font-style:italic}

.duas-colunas{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,88px);align-items:start}

/* Perguntas frequentes */
.perguntas{border-top:1px solid var(--linha)}
.perguntas details{border-bottom:1px solid var(--linha)}
.perguntas summary{display:flex;justify-content:space-between;gap:24px;padding:22px 0;cursor:pointer;font-weight:600;font-size:1.125rem;list-style:none}
.perguntas summary::-webkit-details-marker{display:none}
.perguntas summary::after{content:"";flex:none;width:12px;height:12px;margin-top:8px;border-right:2px solid var(--destaque);border-bottom:2px solid var(--destaque);transform:rotate(45deg);transition:transform .2s}
.perguntas details[open] summary::after{transform:rotate(-135deg)}
.perguntas .prosa{padding-bottom:24px;color:var(--texto-2)}

/* Trilha (onde estou) */
.trilha{font-size:.9375rem;color:var(--texto-2);margin-bottom:28px}
.trilha ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.trilha li + li::before{content:"/";margin-right:6px;opacity:.6}
.trilha a{color:var(--texto-2)}

/* Sobre */
.historia{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(40px,6vw,96px)}
.retrato{aspect-ratio:4/5;border-radius:var(--raio);overflow:hidden;background:var(--marinho);display:grid;place-items:center}
.retrato img{width:100%;height:100%;object-fit:cover}
.cidades{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,40px)}
.cidade figure{aspect-ratio:3/2;border-radius:var(--raio);overflow:hidden;background:var(--linha);margin-bottom:18px}
.cidade img{width:100%;height:100%;object-fit:cover}
.cidade address{font-style:normal;color:var(--texto-2);margin-top:6px}

/* Textos legais e artigo */
.documento{max-width:72ch}
.documento h2{font-weight:600;font-size:1.5rem;line-height:1.3;margin-top:2.2em;margin-bottom:.6em}
.documento h3{font-weight:600;font-size:1.2rem;margin-top:1.6em;margin-bottom:.4em}
.documento p,.documento li{color:var(--texto)}
.documento p + p{margin-top:1em}
.documento ul,.documento ol{padding-left:1.4em;margin-top:.6em;display:grid;gap:.4em}
.documento table{width:100%;border-collapse:collapse;margin-top:1em;font-size:1rem}
.documento th,.documento td{text-align:left;vertical-align:top;padding:12px 12px 12px 0;border-bottom:1px solid var(--linha)}
.documento th{font-weight:600}
.documento .tabela-rolagem{overflow-x:auto}
.documento blockquote{border-left:3px solid var(--ouro);padding-left:20px;font-style:italic;margin-top:1em}
.atualizado{color:var(--texto-2);font-size:.9375rem;margin-top:12px}

/* ---------- Rodapé ---------- */
.rodape{background:var(--marinho-profundo);color:var(--texto);padding-top:clamp(56px,7vw,88px);padding-bottom:32px}
.rodape__grade{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr);gap:40px}
.rodape h2{font-weight:600;font-size:1rem;margin-bottom:14px;color:var(--branco)}
.rodape ul{list-style:none;display:grid;gap:10px}
.rodape a{color:var(--prata);text-decoration:none}
.rodape a:hover{color:var(--branco);text-decoration:underline}
.rodape address{font-style:normal;color:var(--prata);font-size:1rem;line-height:1.55}
/* Com ícone, o texto que quebra linha fica alinhado depois dele, e não embaixo. */
.rodape li a:has(.simbolo),.rodape address:has(.simbolo){display:inline-flex;align-items:flex-start}
.rodape .simbolo{margin-top:.26em}
.rodape address + address{margin-top:14px}
.rodape__lema{font-family:var(--fonte-display);font-weight:700;font-size:.875rem;line-height:1.5;color:var(--ouro);margin-top:20px}
.rodape__base{margin-top:56px;padding-top:24px;border-top:1px solid var(--linha);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;font-size:.875rem;color:var(--prata)}
.rodape .marca{margin-bottom:6px}

/* Utilitários de espaçamento (sem estilo em linha, por causa da CSP) */
.mt-0{margin-top:12px}.mt-1{margin-top:20px}.mt-2{margin-top:32px}.mt-3{margin-top:48px}

/* Barra fixa no celular */
.barra-fixa{display:none}

/* ---------- Responsivo ---------- */
@media (max-width:1080px){
  .navegacao .navegacao__item--secundario{display:none}
  .rodape__grade{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .navegacao{display:none}
  .abre-menu{display:inline-flex}
  .abertura__grade{grid-template-areas:"texto" "painel" "acoes";grid-template-rows:auto}
  .abertura__paineis{margin-top:32px}
  .abertura__grade,.prova__grade,.contato__grade,.duas-colunas,.historia,.cabeca-secao--dividida{grid-template-columns:minmax(0,1fr)}
  .ficha{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ficha > div:nth-child(3){padding-left:0;border-left:0}
  .ficha > div:nth-child(n+3){border-top:1px solid var(--linha)}
  .setor{grid-template-columns:minmax(0,120px) minmax(0,1fr)}
  .setor__entregas-bloco{grid-column:1 / -1}
  .camada{grid-template-columns:minmax(0,1fr)}
  .metodo{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}
  .metodo li:nth-child(3){padding-left:0;border-left:0}
  .dores{grid-template-columns:minmax(0,1fr)}
  .compromissos,.depoimentos{grid-template-columns:minmax(0,1fr)}
  .foto-faixa{aspect-ratio:16/9}
  .barra-fixa{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;gap:10px;padding:10px var(--margem-lateral) calc(10px + env(safe-area-inset-bottom));
    background:var(--marinho);border-top:1px solid var(--linha-escura);transform:translateY(110%);visibility:hidden;transition:transform .3s ease,visibility 0s linear .3s}
  .barra-fixa.visivel{transform:none;visibility:visible;transition:transform .3s ease}
  .barra-fixa .botao{flex:1;min-height:46px;padding:10px 12px;font-size:1rem}
  .barra-fixa .botao--contorno{color:var(--branco)}
  body{padding-bottom:calc(68px + env(safe-area-inset-bottom))}
}
@media (max-width:640px){
  .marca__nome span{display:none}
  .ficha{grid-template-columns:minmax(0,1fr)}
  .ficha > div,.ficha > div + div{padding:18px 0;border-left:0}
  .ficha > div + div{border-top:1px solid var(--linha)}
  .setor{grid-template-columns:minmax(0,1fr)}
  .setor__foto{aspect-ratio:16/9}
  .camada__servicos,.entregas,.campos-2,.cidades{grid-template-columns:minmax(0,1fr)}
  .metodo{grid-template-columns:minmax(0,1fr)}
  .metodo li,.metodo li + li{padding:24px 0 0;border-left:0}
  .metodo li + li{border-top:1px solid var(--linha);margin-top:4px}
  .artigos a{grid-template-columns:minmax(0,1fr);gap:8px}
  .rodape__grade{grid-template-columns:minmax(0,1fr)}
  .painel__topo{flex-direction:column;gap:4px}
  .painel{padding:16px}
  .grafico text{font-size:20px}
  .seletor__aba{padding:12px 14px;font-size:1rem}
  .acoes .botao{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}
}
@media print{
  .cabecalho,.barra-fixa,.menu-movel,.formulario,.zap,.ao-topo{display:none!important}
  .faixa--escura{background:none;color:#000}
}

/* ---------- Fotos: preenchem a moldura, com o ponto focal de cada uma ---------- */
.foto-faixa picture,.cidade figure picture,.setor__foto picture,.retrato picture{display:block;height:100%}
.foto--construcao{object-position:55% 70%}
.foto--holding{object-position:72% 50%}
.foto--clinica{object-position:55% 60%}
.foto--farmacia{object-position:58% 55%}
.foto--recife{object-position:45% 50%}
.foto--maragogi{object-position:55% 60%}

/* Larguras das barrinhas dos relatórios de exemplo (classes, por causa da CSP) */
.w-10{width:10%}.w-20{width:20%}.w-30{width:30%}.w-40{width:40%}.w-50{width:50%}
.w-60{width:60%}.w-70{width:70%}.w-80{width:80%}.w-90{width:90%}.w-100{width:100%}

/* ---------- Calculadora de precificação ---------- */
.formula{font-family:var(--fonte-display);font-weight:700;font-size:clamp(.95rem,.6rem + 1.5vw,1.6rem);line-height:1.5;letter-spacing:.01em;
  padding:clamp(20px,3vw,32px);border-radius:var(--raio);background:var(--marinho);color:var(--ouro);overflow-wrap:anywhere}
.formula--pequena{font-size:clamp(.8rem,.65rem + .5vw,1rem);padding:16px 20px}
.formula__termos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:28px}
.formula__termos dt{font-weight:600;margin-bottom:6px}
.formula__termos dd{color:var(--texto-2);font-size:1rem}
.tabela-multiplicador{width:100%;border-collapse:collapse}
.tabela-multiplicador caption{text-align:left;font-weight:600;padding-bottom:12px}
.tabela-multiplicador th,.tabela-multiplicador td{padding:12px 0;border-bottom:1px solid var(--linha);text-align:left}
.tabela-multiplicador thead th{font-size:.875rem;font-weight:600;color:var(--texto-2)}
.tabela-multiplicador td + td,.tabela-multiplicador th + th{text-align:right}
.tabela-multiplicador td + td{font-family:var(--fonte-display);font-weight:700;color:var(--ouro-escuro)}

.calc-bloqueada{padding:clamp(24px,3vw,36px);border:1.5px dashed #737AA8;border-radius:var(--raio);background:var(--branco);max-width:720px}
.calc-bloqueada[hidden]{display:none}
.calc[hidden]{display:none}
.calc__abas{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.calc__aba{padding:12px 20px;border-radius:var(--raio);border:1.5px solid #737AA8;background:var(--branco);color:var(--marinho);font-weight:600;cursor:pointer}
.calc__aba[aria-selected="true"]{background:var(--marinho);border-color:var(--marinho);color:var(--branco)}
.calc__painel[hidden]{display:none}
.calc__grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(20px,3vw,40px);align-items:start}
.calc__form{display:grid;gap:18px;padding:clamp(20px,3vw,32px);background:var(--branco);border-radius:var(--raio);border:1px solid var(--linha)}
.calc__ajuda{border:1px solid var(--linha);border-radius:var(--raio);padding:14px 18px;background:var(--nevoa)}
.calc__ajuda summary{font-weight:600;cursor:pointer}
.calc__ajuda ol{margin-top:10px;padding-left:1.3em;display:grid;gap:8px;font-size:1rem;color:var(--grafite)}
.calc__resultado{padding:clamp(20px,3vw,32px);background:var(--branco);border-radius:var(--raio);border:1px solid var(--linha);min-height:240px}
.calc__resultado:focus{outline:none}
.calc__resultado:focus-visible{outline:3px solid var(--marinho);outline-offset:3px}
.calc__vazio{color:var(--grafite)}
.calc__erro{color:#B42318;font-weight:600}
.calc__destaque{display:grid;gap:4px;padding-bottom:20px;border-bottom:1px solid var(--linha)}
.calc__destaque span{font-weight:600;color:var(--grafite)}
.calc__destaque strong{font-family:var(--fonte-display);font-weight:800;font-size:clamp(1.8rem,1.3rem + 2vw,2.75rem);line-height:1.15;color:var(--marinho);font-variant-numeric:lining-nums tabular-nums}
.calc__destaque small{font-size:1rem;color:var(--grafite)}
.calc__linhas{display:grid;gap:8px;margin-top:16px}
.calc__linhas div{display:flex;justify-content:space-between;gap:16px;font-size:1rem}
.calc__linhas dt{color:var(--grafite)}
.calc__linhas dd{font-weight:600;white-space:nowrap}
.calc__barra{display:flex;height:22px;margin-top:22px;border-radius:4px;overflow:hidden;background:var(--nevoa)}
.calc__seg{display:block;height:100%;width:0;transition:width .8s cubic-bezier(.2,.7,.2,1)}
.calc__seg--custo{background:var(--marinho)}
.calc__seg--trib{background:#5A62B0}
.calc__seg--ibs{background:#8E93C4}
.calc__seg--desp{background:#C3C7E4}
.calc__seg--lucro{background:var(--ouro)}
.calc__legenda{list-style:none;display:grid;gap:6px;margin-top:14px;font-size:1rem}
.calc__legenda li{display:grid;grid-template-columns:14px minmax(0,1fr) auto auto;gap:10px;align-items:center}
.calc__legenda i{width:14px;height:14px;border-radius:3px;display:block}
.calc__legenda b{font-weight:600;font-variant-numeric:tabular-nums}
.calc__reais{color:var(--grafite);min-width:92px;text-align:right;font-variant-numeric:tabular-nums}
.calc__sub{margin-top:28px;margin-bottom:10px;font-size:1.2rem}
.calc__conta,.calc__comparativo{width:100%;border-collapse:collapse;font-size:1rem}
.calc__conta th,.calc__conta td,.calc__comparativo th,.calc__comparativo td{padding:10px 0;border-bottom:1px solid var(--linha);text-align:left}
.calc__conta td,.calc__comparativo td{text-align:right;white-space:nowrap}
.calc__comparativo{min-width:520px;margin-top:20px}
.calc__comparativo thead th{font-size:.875rem;color:var(--grafite);font-weight:600}
.calc__comparativo thead th + th{text-align:right}
.calc__comparativo th,.calc__comparativo td{padding-right:12px}
.calc__conta th{font-weight:400}
.calc__total th,.calc__total td{font-weight:700;border-bottom:2px solid var(--marinho)}
.calc__alerta{margin-top:24px;padding:18px 20px;border-left:4px solid var(--ouro);background:#FBF6E6;border-radius:0 var(--raio) var(--raio) 0}
.calc__alerta .subtitulo{font-size:1.1rem;margin-bottom:6px}
.calc__frase{margin-top:16px;font-weight:600}
.calc__sugestoes{list-style:none;display:grid;gap:12px}
.calc__sugestoes li{position:relative;padding-left:22px;color:var(--texto)}
.calc__sugestoes li::before{content:"";position:absolute;left:0;top:.7em;width:10px;height:2px;background:var(--ouro-escuro)}
.calc__acoes{margin-top:28px}
.calc__aviso{margin-top:16px}
.formulario--isca .miudo{margin-top:-8px}
@media (max-width:900px){
  .formula__termos{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calc__grade{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .formula__termos{grid-template-columns:minmax(0,1fr)}
  .calc__legenda li{grid-template-columns:14px minmax(0,1fr) auto}
  .calc__reais{display:none}
}

.estado{white-space:nowrap}
@media (max-width:640px){
  .calc__comparativo{min-width:0;font-size:.8125rem}
  .calc__comparativo th,.calc__comparativo td{padding-right:6px;white-space:normal}
  .calc__comparativo td{white-space:nowrap}
}

/* =====================================================================
   Versão 2: cores dos setores, retrato, simuladores e navegação
   ===================================================================== */

/* ---------- Tema de cada setor (body.tema-x nas páginas de setor; painéis da home) ---------- */
.tema-construcao{--setor:var(--tijolo);--setor-claro:var(--tijolo-claro);--setor-texto2:var(--tijolo-texto2)}
.tema-holdings{--setor:var(--garrafa);--setor-claro:var(--garrafa-claro);--setor-texto2:var(--garrafa-texto2)}
.tema-clinicas{--setor:var(--petroleo);--setor-claro:var(--petroleo-claro);--setor-texto2:var(--petroleo-texto2)}
.tema-farmacias{--setor:var(--vinho);--setor-claro:var(--vinho-claro);--setor-texto2:var(--vinho-texto2)}

/* Página de setor: a abertura troca o marinho pela cor do setor */
body[class*="tema-"] .abertura,body[class*="tema-"] .faixa--setor{--fundo:var(--setor);--texto-2:var(--setor-texto2);--linha:rgba(255,255,255,.24);--destaque:var(--ouro-claro);
  --acento:var(--ouro);--acento-txt:var(--ouro-claro);--trilho:rgba(255,255,255,.28);background:var(--setor)}
body[class*="tema-"] .faixa--setor .tabela-ficha td{color:var(--ouro-claro)}
body[class*="tema-"] .abertura .painel{background:rgba(0,0,0,.16);border-color:rgba(255,255,255,.2)}

/* ---------- Cabeçalho: barra de leitura e sombra depois de rolar ---------- */
.cabecalho{transition:box-shadow .3s ease}
.cabecalho.rolou{box-shadow:0 10px 30px rgba(1,2,43,.35)}
.progresso{position:absolute;left:0;right:0;bottom:-1px;height:3px;pointer-events:none;overflow:hidden}
.progresso span{display:block;height:100%;background:var(--ouro);transform-origin:0 50%;transform:scaleX(0)}
.submenu__setor b{display:flex;align-items:center;gap:10px}
.submenu__setor b::before{content:"";width:10px;height:10px;border-radius:2px;flex:none;background:var(--cor)}
.submenu__setor--construcao,.marcador-setor--construcao{--cor:var(--tijolo-vivo)}
.submenu__setor--holdings,.marcador-setor--holdings{--cor:var(--garrafa-vivo)}
.submenu__setor--clinicas,.marcador-setor--clinicas{--cor:var(--petroleo-vivo)}
.submenu__setor--farmacias,.marcador-setor--farmacias{--cor:var(--vinho-vivo)}

/* ---------- Abertura da home: texto e retrato ---------- */
.abertura--inicio{padding-top:clamp(48px,6vw,96px)}
.abertura--inicio .abertura__grade{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"texto retrato";grid-template-rows:auto;align-items:center}
.titulo-principal{font-weight:700;font-size:clamp(2.1rem,1.25rem + 2.9vw,3.6rem);line-height:1.06;letter-spacing:-.025em;max-width:19ch;margin-bottom:28px;text-wrap:balance}
.abertura--inicio .lead{max-width:54ch}
.abertura__setores{list-style:none;display:grid;grid-template-columns:repeat(2,max-content);gap:12px 40px;margin-top:40px;padding-top:24px;border-top:1px solid var(--linha)}
.marcador-setor{display:inline-flex;align-items:center;gap:10px;color:var(--texto-2);text-decoration:none;font-size:1rem}
.marcador-setor::before{content:"";width:12px;height:12px;border-radius:2px;flex:none;background:var(--cor)}
.marcador-setor:hover{color:var(--branco);text-decoration:underline;text-decoration-color:var(--cor);text-decoration-thickness:2px;text-underline-offset:5px}

.retrato-abertura{grid-area:retrato;position:relative;margin:0;justify-self:end;width:min(100%,430px);padding:0 0 32px 32px}
.retrato-abertura::before{content:"";position:absolute;left:0;bottom:0;right:32px;top:32px;border:1.5px solid var(--ouro);border-radius:10px}
.retrato-abertura__foto{position:relative;z-index:1;aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:#3B3D47}
.retrato-abertura__foto picture{display:block;height:100%}
.retrato-abertura__foto img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.selo{position:absolute;z-index:2;display:grid;gap:2px;padding:12px 16px;border-radius:8px;line-height:1.3;box-shadow:0 14px 30px rgba(1,2,43,.38)}
.selo--nome{left:0;bottom:72px;background:var(--branco);color:var(--marinho)}
.selo--nome b{font-weight:600}
.selo--nome span{font-size:.875rem;color:var(--grafite)}
.selo--lugar{left:32px;right:0;bottom:10px;width:max-content;max-width:calc(100% - 52px);margin-inline:auto;justify-content:center;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;row-gap:0;padding:9px 14px;background:var(--ouro);color:var(--marinho)}
.selo--lugar > *{white-space:nowrap}
.selo--lugar span{font-size:.8125rem}
.selo--lugar b{font-family:var(--fonte-display);font-weight:700;font-size:.8125rem;letter-spacing:.01em}

/* ---------- "Por onde você quer começar?": cartões de setor e painel ---------- */
html:not(.js) .caminhos__abas{display:none}
html:not(.js) .caminho-painel + .caminho-painel{margin-top:20px}
.caminhos__abas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}
.caminho{position:relative;display:grid;align-content:start;gap:4px;padding:0 0 18px;text-align:left;font:inherit;color:var(--marinho);cursor:pointer;
  background:var(--branco);border:1.5px solid var(--linha-clara);border-radius:10px;overflow:hidden;transition:transform .2s ease,border-color .2s,background-color .2s}
.caminho::before{content:"";position:absolute;z-index:1;left:0;right:0;top:0;height:6px;background:var(--cor)}
.caminho--construcao{--cor:var(--tijolo);--cor-clara:var(--tijolo-claro)}
.caminho--holdings{--cor:var(--garrafa);--cor-clara:var(--garrafa-claro)}
.caminho--clinicas{--cor:var(--petroleo);--cor-clara:var(--petroleo-claro)}
.caminho--farmacias{--cor:var(--vinho);--cor-clara:var(--vinho-claro)}
.caminho__foto{display:block;aspect-ratio:16/10;overflow:hidden;margin-bottom:12px;background:var(--linha-clara)}
.caminho__foto picture{display:block;height:100%}
.caminho__foto img{width:100%;height:100%;object-fit:cover}
.caminho__nome{padding-inline:16px;font-weight:600;font-size:1.125rem;line-height:1.3}
.caminho__resumo{padding-inline:16px;font-size:.9375rem;line-height:1.45;color:var(--grafite)}
.caminho:hover{transform:translateY(-2px);border-color:var(--cor)}
.caminho[aria-selected="true"]{border-color:var(--cor);background:var(--cor-clara);box-shadow:inset 0 0 0 1.5px var(--cor)}
.caminho:focus-visible{outline:3px solid var(--marinho);outline-offset:3px}

.caminho-painel{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);padding:clamp(20px,3vw,40px);
  background:var(--setor-claro);border-radius:10px;border-top:6px solid var(--setor);
  --fundo:var(--setor-claro);--texto:var(--marinho);--texto-2:var(--grafite);--linha:rgba(2,4,73,.14);--destaque:var(--setor);
  --acento:var(--setor);--acento-txt:var(--setor);--trilho:#C3C8DA;--foco:var(--marinho)}
.caminho-painel[hidden]{display:none}
.caminho-painel__texto .subtitulo{margin-bottom:12px}
.caminho-painel__texto > p{margin-bottom:20px}
.caminho-painel .acoes{margin-top:28px}
.caminho-painel .botao--principal{background:var(--setor);color:var(--branco)}
.caminho-painel .botao--principal:hover{background:var(--marinho)}

/* ---------- Simuladores ---------- */
html:not(.js) .simulador__controles,html:not(.js) .simulador__resultado{display:none}
.simulador__controles{display:grid;gap:16px;margin-bottom:22px}
.controle__topo{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px}
.controle label{font-weight:600;font-size:1rem;line-height:1.35}
.controle__valor{flex:none;font-family:var(--fonte-display);font-weight:700;font-size:.875rem;color:var(--texto);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}
.controle input[type="range"]{--pct:50%;-webkit-appearance:none;appearance:none;display:block;width:100%;height:30px;margin:0;background:transparent;cursor:pointer}
.controle input[type="range"]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--acento) 0 var(--pct),var(--trilho) var(--pct) 100%)}
.controle input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-9px;border-radius:50%;background:var(--branco);border:4px solid var(--acento);box-shadow:0 1px 4px rgba(1,2,43,.3)}
.controle input[type="range"]::-moz-range-track{height:6px;border-radius:3px;background:var(--trilho)}
.controle input[type="range"]::-moz-range-progress{height:6px;border-radius:3px;background:var(--acento)}
.controle input[type="range"]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--branco);border:4px solid var(--acento);box-shadow:0 1px 4px rgba(1,2,43,.3)}
.controle input[type="range"]:focus-visible{outline:3px solid var(--foco);outline-offset:4px}
.controle__marcar{font-size:1rem}
.controle__marcar input{accent-color:var(--acento)}
.simulador__resultado{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin-top:18px;padding-top:18px;border-top:1px solid var(--linha)}
.simulador__resultado:empty{display:none}
.resultado__item span{display:block;font-size:.875rem;line-height:1.4;color:var(--texto-2)}
.resultado__item strong{display:block;font-family:var(--fonte-display);font-weight:700;font-size:clamp(1.05rem,.9rem + .6vw,1.35rem);line-height:1.3;color:var(--texto);font-variant-numeric:lining-nums tabular-nums}
.resultado__item--destaque strong{color:var(--acento-txt)}
.resultado__frase{grid-column:1 / -1;font-size:1rem;line-height:1.55;color:var(--texto)}
.simulador__aviso{margin-top:14px;font-size:.8125rem;line-height:1.5;color:var(--texto-2);font-style:italic}
.grafico .g-setor{fill:var(--acento)}
.grafico .g-setor-traco{stroke:var(--acento)}
.grafico .g-suave{fill:var(--texto-2);opacity:.28}
.grafico .g-vazio{fill:none;stroke:var(--texto-2);stroke-width:1.5;stroke-dasharray:4 3}
.grafico .g-texto-acento{fill:var(--acento-txt);font-weight:600}
.grafico .g-grande{font-size:22px;font-weight:700}
.grafico .g-quadro{fill:var(--acento);opacity:.85}
.grafico .g-quadro--fracao{fill:var(--texto-2);opacity:.5}
.grafico .g-s-n1{fill:var(--texto-2);opacity:.22}
.grafico .g-s-n2{fill:var(--texto-2);opacity:.48}
.grafico .g-s-a1{fill:var(--acento);opacity:.5}
.grafico .g-s-a2{fill:var(--acento)}
.legenda i.l-n1,.legenda i.l-n2,.legenda i.l-a1,.legenda i.l-a2{height:12px;width:16px}
.legenda i.l-n1{background:var(--texto-2);opacity:.22}
.legenda i.l-n2{background:var(--texto-2);opacity:.48}
.legenda i.l-a1{background:var(--acento);opacity:.5}
.legenda i.l-a2{background:var(--acento)}
.caminho-painel__texto{position:sticky;top:calc(var(--cabecalho) + 32px);align-self:start}
.grafico .g-transicao{transition:width .35s ease,x .35s ease,cx .35s ease,y .35s ease,height .35s ease}

/* ---------- Caso de Maragogi ---------- */
.caso__grade{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);margin-top:clamp(32px,4vw,52px);align-items:start}
.caso__partes{display:grid;gap:0}
.caso__partes > div{padding-block:22px;border-top:1px solid var(--linha)}
.caso__partes > div:last-child{border-bottom:1px solid var(--linha)}
.caso__partes h3{margin-bottom:8px;color:var(--ouro)}
.caso__partes p{color:var(--texto-2)}
.caso__numeros{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--linha)}
.caso__numeros > div{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:10px;padding:22px 0;border-bottom:1px solid var(--linha)}
.caso__numeros > div:first-child{grid-column:1 / -1}
.caso__numeros > div:nth-child(even){padding-right:20px}
.caso__numeros > div:nth-child(odd):not(:first-child){padding-left:20px;border-left:1px solid var(--linha)}
.caso__numeros dt{color:var(--texto-2);font-size:1rem}
.caso__numeros dd{font-family:var(--fonte-display);font-weight:800;font-size:clamp(2.2rem,1.5rem + 2.6vw,3.75rem);line-height:1;color:var(--ouro)}
.caso__numeros > div:first-child dd{font-size:clamp(3rem,2rem + 4vw,5.5rem)}
.caso .nota-evento{margin-top:clamp(40px,5vw,64px)}

/* ---------- Faixa dourada (calculadora) ---------- */
.faixa--ouro{--fundo:var(--ouro);--texto:var(--marinho);--texto-2:#2B2F63;--linha:rgba(2,4,73,.25);--destaque:var(--marinho);--foco:var(--marinho);background:var(--ouro)}
.faixa--ouro .lead{color:var(--marinho)}
.faixa--ouro .formulario{box-shadow:0 18px 40px rgba(77,58,4,.28)}

/* ---------- Contato: quem é o responsável ---------- */
.responsavel{display:flex;align-items:center;gap:16px;margin:28px 0 0}
.responsavel picture{flex:none;display:block;width:76px;height:76px;border-radius:50%;overflow:hidden;border:2px solid var(--ouro)}
.responsavel img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.responsavel figcaption{display:grid;line-height:1.4}
.responsavel b{font-weight:600}
.responsavel span{font-size:.9375rem;color:var(--texto-2)}

/* ---------- Pontos de navegação (só na home, telas largas) ---------- */
.pontos{display:none}
@media (min-width:1360px){
  .pontos{display:block;position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:35}
}
.pontos ol{list-style:none;display:grid;gap:4px}
.pontos a{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-height:24px;text-decoration:none}
.pontos i{flex:none;width:10px;height:10px;border-radius:50%;background:#9AA0C8;box-shadow:0 0 0 2px var(--branco),0 0 0 3px rgba(2,4,73,.28);transition:transform .2s ease,background-color .2s}
.pontos .rotulo{padding:3px 9px;border-radius:4px;background:var(--branco);color:var(--marinho);font-size:.8125rem;white-space:nowrap;box-shadow:0 2px 10px rgba(1,2,43,.2);
  opacity:0;transform:translateX(6px);transition:opacity .2s,transform .2s;pointer-events:none}
.pontos a:hover .rotulo,.pontos a:focus-visible .rotulo{opacity:1;transform:none}
.pontos a[aria-current="true"] i{background:var(--ouro);transform:scale(1.4)}
.pontos a:focus-visible{outline:none}
.pontos a:focus-visible i{box-shadow:0 0 0 2px var(--branco),0 0 0 5px var(--marinho)}

/* ---------- Voltar ao topo ---------- */
.ao-topo{position:fixed;right:20px;bottom:24px;z-index:35;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;
  background:var(--marinho);color:var(--branco);border:1.5px solid var(--ouro);box-shadow:0 8px 22px rgba(1,2,43,.32);
  transition:opacity .25s,transform .25s,visibility 0s}
.ao-topo svg{width:22px;height:22px}
.ao-topo:hover{background:var(--marinho-claro)}
.ao-topo:focus-visible{outline:3px solid var(--ouro);outline-offset:3px}
.js .ao-topo:not(.visivel){opacity:0;transform:translateY(10px);visibility:hidden;transition:opacity .25s,transform .25s,visibility 0s linear .25s}

/* ---------- Responsivo da versão 2 ---------- */
@media (max-width:1080px){
  .caminhos__abas{gap:12px}
  .caminho__resumo{font-size:.875rem}
}
@media (max-width:900px){
  .caminho__foto{aspect-ratio:2/1}
}
@media (max-width:760px){
  .caminhos__abas{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .abertura--inicio .abertura__grade{grid-template-columns:minmax(0,1fr);grid-template-areas:"texto" "retrato"}
  .retrato-abertura{justify-self:start;width:min(100%,380px);margin-top:48px}
  .caminho-painel,.caso__grade{grid-template-columns:minmax(0,1fr)}
  .ao-topo{right:16px;bottom:calc(84px + env(safe-area-inset-bottom));width:44px;height:44px}
  html{scroll-padding-bottom:calc(84px + env(safe-area-inset-bottom))}
}
@media (max-width:640px){
  .caminhos__abas{gap:10px}
  .abertura__setores{grid-template-columns:minmax(0,1fr)}
  .caminho{padding-bottom:14px}
  .caminho__nome{font-size:1rem;padding-inline:12px}
  .caminho__resumo{display:none}
  .caminho__foto{aspect-ratio:16/10;margin-bottom:10px}
  .simulador__resultado{grid-template-columns:minmax(0,1fr)}
  .selo--lugar{padding:8px 12px;max-width:calc(100% - 40px)}
  .selo--lugar span,.selo--lugar b{font-size:.75rem}
  .caso__numeros > div:nth-child(even){padding-right:12px}
  .caso__numeros > div:nth-child(odd):not(:first-child){padding-left:12px}
}
@media (prefers-reduced-motion:reduce){
  .caminho:hover{transform:none}
}
@media (max-width:400px){
  .tabela-ficha td{white-space:normal;font-size:1.05rem}
}

/* ---------- WhatsApp no canto ----------
   Só no computador: no celular, a barra fixa de baixo já tem o WhatsApp.
   Sem JavaScript, o botão abre o WhatsApp direto; com JavaScript, abre antes a janelinha. */
.zap{display:none}
@media (min-width:901px){
  .zap{display:block}
  .ao-topo{right:26px;bottom:100px}
}
.zap__botao{position:fixed;right:20px;bottom:24px;z-index:36;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;
  background:var(--ouro);color:var(--marinho);box-shadow:0 10px 26px rgba(1,2,43,.35);transition:background-color .2s}
.zap__botao:hover{background:#E4C45A}
.zap__botao:focus-visible{outline:3px solid var(--marinho);outline-offset:3px}
.zap__botao svg{width:30px;height:30px}
.zap__janela{position:fixed;right:20px;bottom:100px;z-index:40;width:300px;padding:20px;border-radius:12px;
  background:var(--branco);color:var(--marinho);box-shadow:0 18px 50px rgba(1,2,43,.35)}
.zap__fechar{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;
  background:transparent;color:var(--grafite);cursor:pointer}
.zap__fechar:hover{background:var(--nevoa)}
.zap__fechar svg{width:20px;height:20px}
.zap__quem{display:flex;align-items:center;gap:12px;padding-right:32px}
.zap__quem picture{flex:none;width:52px;height:52px;border-radius:50%;overflow:hidden}
.zap__quem img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.zap__quem p{display:grid;line-height:1.3}
.zap__quem span{font-size:.8125rem;color:var(--grafite)}
.zap__texto{margin-top:16px}
.zap__numero{margin-top:4px;font-family:var(--fonte-display);font-weight:700;font-size:1.05rem;font-variant-numeric:lining-nums tabular-nums}
.zap__abrir{width:100%;margin-top:16px}

/* ---------- Vitrine do Instagram e do LinkedIn (itens em fonte/redes.json) ---------- */
.redes{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px}
.rede-card{display:grid;gap:10px;align-content:start;text-decoration:none;color:var(--texto)}
.rede-card__capa{position:relative;display:block;aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:var(--linha)}
.rede-card__capa img{width:100%;height:100%;object-fit:cover}
/* Reels no formato inteiro do vídeo (9:16), para a capa aparecer sem cortes. */
.rede-card--reel .rede-card__capa{aspect-ratio:9/16}
.rede-card__play{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;
  background:rgba(1,2,43,.72);color:var(--branco)}
.rede-card__play svg{width:18px;height:18px}
.rede-card__rede{display:flex;align-items:center;gap:6px;font-size:.875rem;color:var(--texto-2)}
.rede-card__rede svg{width:16px;height:16px;flex:none;color:var(--destaque)}
.rede-card__titulo{font-weight:700;line-height:1.35}
.rede-card:hover .rede-card__titulo{text-decoration:underline;text-decoration-color:var(--destaque);text-underline-offset:4px}
.redes__seguir{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:900px){
  .redes{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
}
