:root {
  /* Tons neutros e dourado da marca; verde reservado ao botão de WhatsApp. */
  --cor-fundo: #fbf9f6;
  --cor-superficie: #f5f1e9;
  --cor-bege: #e9dfcb;
  --cor-grafite: #292724;
  --cor-dourado: #c3a34a;
  --cor-dourado-escuro: #806535;
  --cor-texto-secundario: #686158;
  --cor-borda: #e6dfd3;
  --largura-conteudo: 1160px;
  --fonte-texto: "Segoe UI", Arial, sans-serif;
  --fonte-titulo: "Segoe UI", Arial, sans-serif;
  --fonte-destaque: Georgia, "Times New Roman", serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 125px; }
body { margin: 0; color: var(--cor-grafite); background: var(--cor-fundo); font-family: var(--fonte-texto); font-size: 16px; line-height: 1.65; }
button, input, textarea { font: inherit; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: var(--fonte-titulo); font-weight: 600; line-height: 1.15; }
h2 { font-size: clamp(2rem, 3.5vw, 2.85rem); letter-spacing: -.045em; }
h3 { font-size: 1.2rem; line-height: 1.4; letter-spacing: -.02em; }
p { margin-bottom: 1.15rem; }
svg { display: inline-block; }
::selection { background: var(--cor-bege); color: var(--cor-grafite); }
:focus-visible { outline: 3px solid var(--cor-dourado-escuro); outline-offset: 5px; }
[hidden] { display: none !important; }
.container { width: min(var(--largura-conteudo), calc(100% - 48px)); margin-inline: auto; }
.icone { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
.simbolos { position: absolute; width: 0; height: 0; overflow: hidden; }
.pular-conteudo { position: fixed; top: 12px; left: 12px; z-index: 100; padding: 12px 18px; border-radius: 999px; background: var(--cor-grafite); color: var(--cor-superficie); transform: translateY(-180%); }
.pular-conteudo:focus { transform: translateY(0); }
.sobrelinha { margin-bottom: 20px; color: var(--cor-dourado-escuro); font-size: .7rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }

.cabecalho { position: sticky; top: 16px; z-index: 30; width: min(1220px, calc(100% - 40px)); margin: 16px auto 0; background: var(--cor-superficie); border: 1px solid #e6dfd3cc; border-radius: 999px; box-shadow: 0 8px 30px #29272408; }
.cabecalho-conteudo { width: calc(100% - 48px); display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 82px; }
.marca { width: 174px; flex-shrink: 0; }
.marca img { width: 100%; height: auto; }
.menu-principal { display: flex; align-items: center; gap: clamp(15px, 2vw, 27px); }
.menu-principal a { font-size: .81rem; font-weight: 500; transition: color .2s; }
.menu-principal a:hover { color: var(--cor-dourado-escuro); }
.menu-principal .menu-contato { display: inline-flex; align-items: center; gap: 12px; padding: 12px 18px; border-radius: 999px; background: var(--cor-grafite); color: var(--cor-fundo); }
.menu-principal .menu-contato:hover { color: var(--cor-fundo); background: #484139; }
.menu-contato .icone { width: 17px; height: 17px; }
.alternar-menu { display: none; align-items: center; justify-content: center; width: 44px; height: 44px; background: #ffffff80; border: 1px solid var(--cor-borda); border-radius: 50%; color: var(--cor-grafite); }

.apresentacao { padding: clamp(54px, 6vw, 85px) 0 65px; }
.apresentacao-conteudo { display: grid; grid-template-columns: 1.2fr .9fr; align-items: center; gap: clamp(40px, 5vw, 70px); }
.apresentacao h1 { margin-bottom: 25px; font-size: clamp(2.8rem, 4.9vw, 4.5rem); font-weight: 500; line-height: 1.08; letter-spacing: -.055em; max-width: 650px; }
.apresentacao h1 em { display: block; color: var(--cor-dourado-escuro); font-family: var(--fonte-destaque); font-weight: 400; font-style: italic; letter-spacing: -.055em; }
.apresentacao-descricao { max-width: 610px; font-size: 1.04rem; color: var(--cor-texto-secundario); }
.apresentacao-trajetoria { max-width: 610px; font-size: .88rem; color: var(--cor-texto-secundario); }
.acoes { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.botao { display: inline-flex; align-items: center; justify-content: center; gap: 11px; padding: 15px 24px; min-height: 50px; border: 1px solid transparent; border-radius: 999px; font-size: .85rem; font-weight: 600; line-height: 1.3; transition: background .2s, color .2s, transform .2s; }
.botao .icone { width: 20px; height: 20px; }
.botao:hover { transform: translateY(-2px); }
.botao-principal { background: var(--cor-grafite); color: var(--cor-fundo); }
.botao-principal:hover { background: #484139; }
.botao-contorno { border-color: #d9cfbc; color: var(--cor-grafite); background: transparent; }
.botao-contorno:hover { background: #f1e9da; }
.botao-dourado { color: var(--cor-grafite); background: #dac28d; }
.botao-dourado:hover { background: #ead3a2; }
.quadro-posicionamento { position: relative; isolation: isolate; padding: 25px 20px; }
.quadro-posicionamento::before { content: ""; position: absolute; inset: 35px 0 12px 6px; z-index: -2; border-radius: 50%; background: linear-gradient(140deg, #f8f3ea, #e9d8b7); }
.quadro-posicionamento::after { content: ""; position: absolute; inset: 13px 8px 0 35px; z-index: -1; border: 1px solid #c3a34a66; border-radius: 50%; }
.quadro-posicionamento .sobrelinha { letter-spacing: .1em; font-size: .66rem; margin: 0 6px 14px; }
.quadro-posicionamento h2 { max-width: 365px; margin: 0 6px 24px; font-family: var(--fonte-destaque); font-size: clamp(1.95rem, 2.8vw, 2.55rem); font-weight: 400; letter-spacing: -.04em; line-height: 1.18; }
.pilares { list-style: none; margin: 0; padding: 0; }
.pilares li { display: flex; align-items: center; gap: 14px; padding: 17px 18px; margin-top: 14px; border: 1px solid #e9dfce; border-radius: 24px; background: #fffdf9ed; box-shadow: 0 10px 26px #8065350a; }
.pilares li:nth-child(1) { margin-right: 32px; }
.pilares li:nth-child(2) { margin-left: 28px; }
.pilares li:nth-child(3) { margin-right: 15px; }
.pilares li > span { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 36px; height: 36px; border-radius: 50%; background: #f1e7d3; color: var(--cor-dourado-escuro); font-size: .74rem; }
.pilares strong { font-size: .95rem; font-weight: 600; }
.pilares p { margin: 2px 0 0; color: var(--cor-texto-secundario); font-size: .79rem; }
.assinatura { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 24px 6px 0; font-family: var(--fonte-destaque); font-size: 1.3rem; }
.assinatura span { padding: 5px 11px; border: 1px solid #c3a34a66; border-radius: 999px; color: var(--cor-dourado-escuro); font-family: var(--fonte-texto); text-transform: uppercase; font-size: .6rem; letter-spacing: .13em; }

.indicadores { padding: 0 0 28px; }
.grade-indicadores { display: grid; grid-template-columns: repeat(4, 1fr); padding: 27px 30px; border: 1px solid var(--cor-borda); border-radius: 30px; background: #fffdf9; box-shadow: 0 12px 38px #29272405; }
.indicador { display: flex; align-items: center; gap: 20px; padding-inline: 25px; border-left: 1px solid var(--cor-borda); }
.indicador:first-child { padding-left: 0; border-left: none; }
.indicador .icone { color: var(--cor-dourado-escuro); width: 30px; height: 30px; }
.indicador strong { display: block; font-size: 2.05rem; letter-spacing: -.05em; line-height: 1.2; font-weight: 500; }
.indicador span { display: block; margin-top: 5px; color: var(--cor-texto-secundario); font-size: .75rem; }

.secao { padding: 82px 0; }
.secao-bege { margin-inline: 20px; border-radius: 42px; background: linear-gradient(135deg, #f5f0e7, #eee6d7); }
.titulo-secao { max-width: 660px; margin-bottom: 38px; }
.titulo-secao .sobrelinha { margin-bottom: 13px; }
.titulo-secao h2 { margin-bottom: 17px; }
.titulo-secao > p:last-child { margin-bottom: 0; color: var(--cor-texto-secundario); }
.titulo-amplo { max-width: 780px; }
.grade { display: grid; gap: 24px; }
.grade-dois { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grade-tres { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cartao { padding: 32px; background: #fffdf9; border: 1px solid var(--cor-borda); border-radius: 28px; box-shadow: 0 8px 30px #29272404; }
.cartao h3 { margin-bottom: 16px; }
.cartao p { color: var(--cor-texto-secundario); font-size: .93rem; }
.cartao > p:last-child { margin-bottom: 0; }
.cartao .sobrelinha { color: var(--cor-dourado-escuro); font-size: .66rem; margin-bottom: 9px; }
.trajetoria { display: grid; gap: 22px; }
.experiencia-atual { border-color: #d6c198; }
.cartao-cabecalho { display: flex; justify-content: space-between; align-items: flex-start; gap: 22px; margin-bottom: 16px; }
.cartao-cabecalho h3 { margin-bottom: 0; }
.periodo { display: inline-block; flex-shrink: 0; padding: 7px 13px; background: #f3ebdb; color: #685337; font-size: .74rem; border-radius: 999px; }
.lista-destaques { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 35px; row-gap: 22px; list-style: none; padding: 12px 0 0; margin: 0; }
.lista-destaques strong { display: block; font-size: .87rem; color: var(--cor-grafite); }
.lista-destaques span { display: block; font-size: .86rem; color: var(--cor-texto-secundario); margin-top: 5px; }
.icone-cartao { display: inline-flex; width: 49px; height: 49px; align-items: center; justify-content: center; background: #f1e7d3; color: var(--cor-dourado-escuro); margin-bottom: 18px; border-radius: 50%; }
.icone-dourado { color: var(--cor-grafite); background: #e7d4af; }
.etiquetas { display: flex; gap: 8px; flex-wrap: wrap; padding: 0; margin: 23px 0 0; list-style: none; }
.etiquetas li { font-size: .72rem; padding: 5px 12px; background: #f1e7d3; color: #685337; border-radius: 999px; }
.lista-check { list-style: none; margin: 0; padding: 0; }
.lista-check li { position: relative; padding-left: 22px; color: var(--cor-texto-secundario); font-size: .86rem; margin-top: 10px; }
.lista-check li::before { content: "✓"; position: absolute; left: 0; color: var(--cor-dourado-escuro); }
.grade-iniciativas { gap: 24px 28px; }
.grade-iniciativas .cartao { padding: 18px 20px; background: transparent; border: none; border-radius: 0; box-shadow: none; }
.grade-iniciativas .cartao h3 { font-size: 1.06rem; }
.grade-iniciativas .cartao p { font-size: .86rem; }
.cartao-conformidade { margin-top: 30px; background: #f5f1e9; }
.cartao-conformidade .grade { gap: 0 24px; }
.impacto { display: grid; grid-template-columns: 1.15fr 1fr .75fr .85fr; align-items: center; gap: 25px; padding: 33px; margin-top: 24px; background: var(--cor-grafite); color: var(--cor-superficie); border-radius: 30px; }
.impacto .sobrelinha { color: #e0c993; font-size: .65rem; margin-bottom: 10px; }
.impacto h3 { font-family: var(--fonte-destaque); font-size: 1.7rem; font-weight: 400; margin-bottom: 0; }
.impacto strong { display: block; color: #e0c993; font-size: 2.1rem; letter-spacing: -.05em; font-weight: 500; }
.impacto span { display: block; font-size: .75rem; color: #e4ddd2; }
.formacao { display: flex; align-items: center; gap: 22px; padding-top: 32px; margin-top: 35px; border-top: 1px solid #d9cfbc; }
.formacao .icone-cartao { margin-bottom: 0; flex-shrink: 0; }
.formacao .sobrelinha { margin-bottom: 5px; font-size: .64rem; }
.formacao h3 { font-size: 1.08rem; margin-bottom: 5px; }
.formacao p:last-child { color: var(--cor-texto-secundario); font-size: .85rem; margin-bottom: 0; }
.formacao .periodo { margin-left: auto; background: #fff; font-weight: 600; }

.secao-contato { padding-top: 78px; }
.contato-conteudo { display: grid; grid-template-columns: .95fr 1fr; align-items: start; gap: clamp(35px, 5vw, 70px); padding: 48px; border-radius: 42px; background: var(--cor-grafite); color: var(--cor-superficie); }
.contato-apresentacao { padding-top: 20px; }
.contato-apresentacao .sobrelinha { color: #e0c993; }
.contato-apresentacao h2 { margin-bottom: 25px; font-family: var(--fonte-destaque); font-weight: 400; letter-spacing: -.035em; }
.contato-apresentacao > p:not(.sobrelinha) { color: #e4ddd2; }
.contato-apresentacao > .botao { margin-top: 11px; }
.canais-contato { display: grid; gap: 20px; margin-top: 36px; }
.canais-contato a { display: flex; align-items: center; gap: 13px; font-size: .9rem; min-width: 0; }
.canais-contato span { overflow-wrap: anywhere; }
.canais-contato a:hover span { text-decoration: underline; text-underline-offset: 4px; }
.secao-contato a:focus-visible { outline-color: #e0c993; }
.formulario-contato { position: relative; padding: 32px; border: 1px solid #ffffff33; border-radius: 28px; background: #fcfaf6; color: var(--cor-grafite); }
.formulario-contato h3 { font-size: 1.45rem; font-weight: 500; margin-bottom: 9px; }
.texto-apoio { color: var(--cor-texto-secundario); font-size: .78rem; }
.campo { display: grid; gap: 6px; margin-top: 17px; }
.campo label { font-size: .84rem; font-weight: 600; }
.campo label span { color: var(--cor-texto-secundario); font-weight: 400; font-size: .76rem; }
.campo input, .campo textarea { padding: 12px 14px; width: 100%; min-width: 0; border: 1px solid #b9ad98; border-radius: 14px; background: #fffdf9; color: var(--cor-grafite); }
.campo textarea { resize: vertical; min-height: 130px; border-radius: 18px; }
.campo input:focus, .campo textarea:focus { border-color: var(--cor-dourado-escuro); outline: 2px solid var(--cor-dourado-escuro); outline-offset: 1px; }
.campo-robo { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.texto-privacidade { font-size: .73rem; color: var(--cor-texto-secundario); margin: 16px 0 19px; }
.formulario-contato .botao { width: 100%; }
.formulario-contato .botao:disabled { opacity: .65; cursor: wait; transform: none; }
.resultado-contato { margin: 15px 0 0; padding: 12px 14px; font-size: .85rem; border: 1px solid #d9c292; border-radius: 14px; background: #f1e7d3; color: #685337; }
.resultado-contato[data-tipo="erro"] { background: #f5e4dc; color: #853c2d; border-color: #d7aa98; }
.rodape { padding: 8px 0 50px; }
.rodape-conteudo { display: flex; align-items: center; justify-content: space-between; gap: 30px; color: var(--cor-texto-secundario); font-size: .73rem; }
.rodape p { margin-bottom: 0; }
.rodape strong { display: block; color: var(--cor-grafite); font-weight: 600; }
.rodape span { display: block; }
.rodape #ano-atual { display: inline; }
.rodape a { white-space: nowrap; }
.whatsapp-flutuante { position: fixed; right: 23px; bottom: 23px; z-index: 25; display: flex; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 50%; border: 0; color: #fff; background: #16a34a; box-shadow: 0 4px 16px #29272414; }
.whatsapp-flutuante .icone { width: 36px; height: 36px; }
.whatsapp-flutuante span { display: none; }
.whatsapp-flutuante:hover { background: #15803d; }

@media (max-width: 1050px) {
  .menu-principal { gap: 13px; }
  .menu-principal a { font-size: .74rem; }
  .marca { width: 150px; }
  .menu-principal .menu-contato { padding: 11px 15px; }
  .apresentacao-conteudo { grid-template-columns: 1.2fr 1fr; gap: 32px; }
  .quadro-posicionamento { padding: 25px 10px; }
  .impacto { grid-template-columns: 1fr 1fr; gap: 27px; }
  .indicador { padding-inline: 17px; gap: 12px; }
  .contato-conteudo { padding: 38px; }
}
@media (max-width: 830px) {
  html { scroll-padding-top: 110px; }
  .cabecalho { width: calc(100% - 28px); top: 10px; margin-top: 10px; border-radius: 32px; }
  .cabecalho-conteudo { width: calc(100% - 36px); min-height: 74px; flex-wrap: wrap; gap: 0; }
  .marca { width: 145px; }
  .menu-principal { width: 100%; flex-wrap: wrap; gap: 7px; padding: 10px 0 18px; }
  .com-js .alternar-menu { display: inline-flex; }
  .com-js .menu-principal { display: none; }
  .com-js .menu-principal.aberto { display: flex; flex-direction: column; align-items: stretch; }
  .menu-principal a { font-size: .85rem; padding: 9px 14px; border-radius: 16px; }
  .menu-principal .menu-contato { justify-content: space-between; margin-top: 3px; }
  .apresentacao-conteudo { grid-template-columns: 1fr; gap: 45px; }
  .apresentacao-texto { max-width: 660px; }
  .apresentacao h1 { font-size: clamp(2.8rem, 7vw, 4rem); }
  .quadro-posicionamento { width: 100%; max-width: 570px; margin-inline: auto; padding: 25px 32px; }
  .quadro-posicionamento h2 { max-width: 450px; }
  .pilares li:nth-child(1) { margin-right: 55px; }
  .pilares li:nth-child(2) { margin-left: 55px; }
  .pilares li:nth-child(3) { margin-right: 30px; }
  .grade-tres { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grade-indicadores { grid-template-columns: repeat(2, 1fr); row-gap: 25px; padding: 25px; }
  .indicador:nth-child(3) { padding-left: 0; border-left: none; }
  .contato-conteudo { grid-template-columns: 1fr; gap: 35px; padding: 36px; }
  .contato-apresentacao { max-width: 640px; padding-top: 0; }
  .canais-contato { grid-template-columns: 1fr 1fr; }
  .rodape-conteudo { flex-wrap: wrap; gap: 14px 30px; padding-right: 60px; }
  .whatsapp-flutuante { right: 17px; bottom: 17px; }
}
@media (max-width: 560px) {
  .container { width: calc(100% - 36px); }
  .cabecalho { width: calc(100% - 24px); }
  .marca { width: 138px; }
  .apresentacao { padding: 45px 0; }
  .apresentacao h1 { font-size: clamp(2.6rem, 10.5vw, 3.5rem); }
  .apresentacao-descricao { font-size: 1rem; }
  .acoes .botao { width: 100%; }
  .quadro-posicionamento { padding: 22px 0; }
  .quadro-posicionamento::before { inset: 22px 0 12px 0; }
  .quadro-posicionamento::after { inset: 0 10px 0 5px; }
  .quadro-posicionamento h2 { font-size: 2rem; }
  .pilares li { gap: 12px; padding: 16px 14px; }
  .pilares li:nth-child(1) { margin-right: 15px; }
  .pilares li:nth-child(2) { margin-left: 18px; }
  .pilares li:nth-child(3) { margin-right: 5px; }
  .sobrelinha { letter-spacing: .12em; }
  .indicador { gap: 10px; padding-inline: 12px; }
  .indicador .icone { width: 23px; height: 23px; }
  .indicador span { font-size: .68rem; }
  .indicador strong { font-size: 1.75rem; }
  .grade-indicadores { padding: 24px 18px; border-radius: 25px; }
  .secao { padding: 55px 0; }
  .secao-bege { margin-inline: 12px; border-radius: 30px; }
  .titulo-secao h2 { font-size: 2.1rem; }
  .grade-dois, .grade-tres, .lista-destaques { grid-template-columns: 1fr; }
  .cartao { padding: 25px; border-radius: 24px; }
  .cartao-cabecalho { flex-direction: column; gap: 12px; }
  .lista-destaques { gap: 19px; }
  .grade-iniciativas .cartao { padding: 13px 6px; }
  .impacto { padding: 25px; gap: 23px; border-radius: 24px; }
  .impacto > div:first-child { grid-column: 1 / -1; }
  .formacao { flex-wrap: wrap; gap: 17px; align-items: flex-start; }
  .formacao > div:nth-child(2) { flex: 1; }
  .formacao .periodo { margin-left: 66px; }
  .contato-conteudo { width: calc(100% - 24px); padding: 30px 20px; border-radius: 30px; }
  .canais-contato { grid-template-columns: 1fr; }
  .formulario-contato { padding: 25px 18px; border-radius: 23px; }
  .rodape-conteudo { display: grid; gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; }
  .botao:hover { transform: none; }
}
