:root {
  --fundo: #F5F0EA;
  --fundo-bloco: #EFE8E0;
  --fundo-escuro: #130E08;
  --fundo-escuro-alt: #3D271A;
  --texto-titulo: #130E08;
  --texto-corpo: #3D271A;
  --texto-secundario: #645A4E;
  --texto-acento: #905C3D;
  --texto-inverso: #F5F0EA;
  --texto-inverso-corpo: #D6CABC;
  --texto-inverso-registro: #9D9285;
  --fio: #9D9285;
  --fio-claro: #C9BDAF;
  --fio-forte: #130E08;
  --f-voz: Spectral, Georgia, serif;
  --f-interface: Inter, Helvetica, Arial, sans-serif;
  --f-dados: Roboto, Arial, sans-serif;
  --esp-1: 8px; --esp-2: 16px; --esp-3: 24px;
  --esp-4: 40px; --esp-5: 64px; --esp-6: 104px;
  --margem: 20px;
  --medianiz: 16px;
  --colunas: 4;
  --largura-max: 1400px;
  --secao-y: clamp(48px, 7vw, 104px);
  --curva-revelacao: cubic-bezier(0.16, 1, 0.3, 1);
  --curva-fio: cubic-bezier(0.22, 1, 0.36, 1);
  --toque: 160ms ease-out;
}
@media (min-width: 600px)  { :root { --margem: 32px; --medianiz: 20px; --colunas: 6; } }
@media (min-width: 900px)  { :root { --margem: 40px; --medianiz: 24px; --colunas: 12; } }
@media (min-width: 1200px) { :root { --margem: 64px; } }
@font-face { font-family: "Spectral"; font-style: normal; font-weight: 300; font-display: swap; src: url("../fontes/spectral-latin-300.woff2") format("woff2"); }
@font-face { font-family: "Spectral"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fontes/spectral-latin-400.woff2") format("woff2"); }
@font-face { font-family: "Spectral"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fontes/spectral-latin-500.woff2") format("woff2"); }
@font-face { font-family: "Spectral"; font-style: italic; font-weight: 300; font-display: swap; src: url("../fontes/spectral-latin-300-italic.woff2") format("woff2"); }
@font-face { font-family: "Spectral"; font-style: italic; font-weight: 400; font-display: swap; src: url("../fontes/spectral-latin-400-italic.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400 700; font-display: swap; src: url("../fontes/inter-latin-400-700.woff2") format("woff2"); }
@font-face { font-family: "Roboto"; font-style: normal; font-weight: 400 500; font-display: swap; src: url("../fontes/roboto-latin-400-500.woff2") format("woff2"); }
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body {
  margin: 0;
  background: var(--fundo);
  color: var(--texto-corpo);
  font-family: var(--f-voz);
  font-size: 1rem;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, p, figure, blockquote, ol, ul, dl, dd { margin: 0; }
ol, ul { padding: 0; list-style: none; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
abbr[title] { text-decoration: none; }
::selection { background: var(--fundo-escuro); color: var(--texto-inverso); }
:focus-visible { outline: 2px solid var(--fio-forte); outline-offset: 2px; }
.escuro :focus-visible { outline-color: var(--texto-inverso-corpo); }
[id] { scroll-margin-top: var(--esp-3); }
.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;
}
.pular {
  position: absolute; top: 8px; left: var(--margem); z-index: 100;
  transform: translateY(-200%);
  background: var(--fundo-escuro); color: var(--texto-inverso);
  font: 600 14px/1 var(--f-interface); letter-spacing: .03em; padding: 15px 26px;
}
.pular:focus { transform: none; }
.contenedor { width: 100%; max-width: var(--largura-max); margin-inline: auto; padding-inline: var(--margem); }
.grade { display: grid; grid-template-columns: repeat(var(--colunas), minmax(0, 1fr)); column-gap: var(--medianiz); }
.grade > * { grid-column: 1 / -1; }
@media (min-width: 600px) { .grade > .col-imagem { grid-column: 1 / 5; } }
@media (min-width: 900px) {
  .grade > .col-texto   { grid-column: 1 / 8; }
  .grade > .col-titulo  { grid-column: 1 / 9; }
  .grade > .col-imagem  { grid-column: 9 / 13; }
  .grade > .col-corpo   { grid-column: 4 / 11; }
}
.secao { position: relative; padding-block: var(--secao-y); }
.fio-secao { position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: var(--fio); transform-origin: left center; }
.rotulo { display: block; font: 600 11px/1.3 var(--f-interface); letter-spacing: .18em; text-transform: uppercase; color: var(--texto-secundario); }
.rotulo--acento { color: var(--texto-acento); }
.numeracao { display: block; margin-bottom: var(--esp-2); font: 500 clamp(28px, 4vw, 56px)/.9 var(--f-dados); font-variant-numeric: tabular-nums; color: var(--texto-acento); }
.cabecalho-secao { margin-bottom: clamp(28px, 4vw, 48px); }
.titulo-secao {
  margin-top: clamp(16px, 2vw, 24px); max-width: 20ch;
  font: 300 clamp(28px, 3.6vw, 60px)/1.08 var(--f-voz); letter-spacing: -.02em;
  color: var(--texto-titulo); text-wrap: balance;
}
.corpo-l p { max-width: 68ch; font-size: clamp(17px, 1.4vw, 19px); line-height: 1.6; }
.corpo-l p + p { margin-top: 1em; }
.registro { font: 400 12px/1.5 var(--f-dados); color: var(--texto-secundario); }
.a-definir { font: 400 12px/1.5 var(--f-dados); color: var(--texto-acento); }
.escuro .a-definir { color: var(--texto-inverso-corpo); }
.botao {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px;
  font: 600 14px/1.2 var(--f-interface); letter-spacing: .03em; cursor: pointer;
  transition: background-color var(--toque), color var(--toque);
}
.botao--primario { padding: 15px 26px; border: 0; background: var(--fundo-escuro); color: var(--texto-inverso); }
.botao { position: relative; overflow: hidden; isolation: isolate; }
.botao::before {
  content: ""; position: absolute; z-index: -1; left: var(--origem-x, 50%); top: var(--origem-y, 50%);
  width: var(--diametro, 230%); aspect-ratio: 1 / 1; border-radius: 50%; background: var(--preenchimento);
  transform: translate(-50%, -50%) scale(0); transition: transform 420ms var(--curva-revelacao); pointer-events: none;
}
.botao--primario { --preenchimento: var(--texto-acento); }
.botao--secundario { --preenchimento: var(--fundo-escuro); transition: color 420ms var(--curva-revelacao); }
.botao:focus-visible::before, .botao:active::before { transform: translate(-50%, -50%) scale(1); }
.botao--secundario:focus-visible, .botao--secundario:active { color: var(--texto-inverso); }
@media (hover: hover) {
  .botao:hover::before { transform: translate(-50%, -50%) scale(1); }
  .botao--secundario:hover { color: var(--texto-inverso); }
}
.botao--secundario { padding: 14px 25px; border: 1px solid var(--fio-forte); background: transparent; color: var(--texto-titulo); }
.botao--compacto { padding: 14px 18px; font-size: 13px; }
.acoes { display: flex; flex-wrap: wrap; align-items: center; gap: var(--esp-2) var(--esp-3); }
.ligacao {
  position: relative; display: inline-block; padding-bottom: 4px;
  border-bottom: 1px solid var(--texto-acento);
  font: 500 14px/1.3 var(--f-interface); color: var(--texto-titulo);
}
.ligacao::before { content: ""; position: absolute; inset: -12px 0; }
.ligacao::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px;
  background: var(--fio-forte); transform: scaleX(0); transform-origin: left center;
  transition: transform var(--toque);
}
.ligacao:hover::after, .ligacao:focus-visible::after { transform: scaleX(1); }
.assinatura { display: inline-flex; align-items: center; min-height: 44px; }
.assinatura__marca { display: flex; align-items: stretch; gap: 9px; }
.assinatura__barra { flex: none; width: 3px; background: var(--fio-forte); }
.assinatura__nome { font: 700 14px/1.2 var(--f-interface); letter-spacing: .09em; text-transform: uppercase; color: var(--texto-titulo); }
.cabecalho { position: relative; z-index: 20; background: var(--fundo); border-bottom: 1px solid var(--fio-forte); }
.cabecalho__linha { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; padding-block: 16px; }
.cabecalho .assinatura { margin-right: auto; }
.navegacao { display: flex; align-items: center; }
.navegacao__links { display: flex; flex-wrap: wrap; }
.navegacao__links a {
  display: flex; align-items: center; min-height: 44px; padding: 14px;
  font: 500 13px/1 var(--f-interface); letter-spacing: .02em; color: var(--texto-titulo);
  transition: background-color var(--toque), color var(--toque);
}
.navegacao__links a:hover { background: var(--fundo-escuro); color: var(--texto-inverso); }
.navegacao__links a[aria-current="page"] { border-bottom: 1px solid var(--texto-acento); }
.navegacao__botao {
  display: none; align-items: center; min-height: 44px; padding: 14px; border: 0; background: transparent;
  font: 600 13px/1 var(--f-interface); letter-spacing: .02em; color: var(--texto-titulo); cursor: pointer;
  transition: background-color var(--toque), color var(--toque);
}
.navegacao__botao:hover, .navegacao__botao[aria-expanded="true"] { background: var(--fundo-escuro); color: var(--texto-inverso); }
@media (max-width: 599.98px) {
  .js .navegacao__botao { display: inline-flex; }
  .js .navegacao__links {
    display: none; position: absolute; top: 100%; left: 0; right: 0; flex-direction: column;
    padding: 0 var(--margem) var(--esp-2); background: var(--fundo); border-bottom: 1px solid var(--fio-forte);
  }
  .js .navegacao__links.aberto { display: flex; }
  .js .navegacao__links li + li { border-top: 1px solid var(--fio); }
  .js .navegacao__links a { padding: 14px 0; font-size: 16px; }
}
.foto { display: block; overflow: hidden; aspect-ratio: 3 / 4; background: var(--fundo-bloco); }
.foto img { width: 100%; height: 100%; object-fit: cover; }
.foto--hero img { object-position: center 30%; }
.reservado { position: relative; aspect-ratio: 16 / 9; background: var(--fundo-bloco); }
.reservado span { position: absolute; left: 12px; bottom: 8px; font: 400 12px/1.5 var(--f-dados); color: var(--texto-secundario); }
.capa { display: block; overflow: hidden; aspect-ratio: 16 / 9; background: var(--fundo-bloco); }
.capa img { width: 100%; height: 100%; object-fit: cover; }
.titulo-palavras { --tom-inicial: var(--texto-secundario); --tom-final: var(--texto-titulo); }
.faixa__titulo.titulo-palavras { --tom-inicial: var(--texto-inverso-registro); --tom-final: var(--texto-inverso); }
.titulo-palavras .palavra { color: color-mix(in srgb, var(--tom-final) calc(var(--acesa, 1) * 100%), var(--tom-inicial)); }
.hero { padding-top: clamp(40px, 6vw, 88px); }
.hero__titulo { margin-top: var(--esp-3); font: 300 clamp(38px, 5.4vw, 92px)/1.02 var(--f-voz); letter-spacing: -.03em; color: var(--texto-titulo); text-wrap: balance; }
.hero__paragrafo { margin-top: var(--esp-3); max-width: 38ch; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.6; }
.hero .acoes { margin-top: var(--esp-4); }
.hero__registro, .hero__foto { margin-top: var(--esp-4); }
@media (min-width: 900px) { .hero__texto { align-self: end; } .hero__foto { margin-top: 0; } }
.faixa { padding-block: var(--secao-y); background: var(--fundo-escuro); color: var(--texto-inverso-corpo); }
.faixa__titulo { padding-left: 18px; border-left: 2px solid var(--texto-acento); font: 300 clamp(28px, 3.6vw, 60px)/1.08 var(--f-voz); letter-spacing: -.02em; color: var(--texto-inverso); text-wrap: balance; }
.faixa__corpo { margin-top: clamp(28px, 4vw, 48px); }
.sobre__lattes, .sobre__foto { margin-top: var(--esp-4); }
@media (min-width: 900px) { .sobre__foto { margin-top: 0; } }
.trajetoria { display: grid; gap: var(--esp-4) var(--medianiz); margin-top: var(--esp-5); padding-top: var(--esp-4); border-top: 1px solid var(--fio); }
@media (min-width: 600px) { .trajetoria { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 900px) { .trajetoria { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.trajetoria .rotulo { margin-bottom: var(--esp-2); }
.trajetoria__interesses { margin-top: var(--esp-4); }
.trajetoria__texto { font-size: 17px; line-height: 1.5; color: var(--texto-titulo); }
.indice { border-top: 1px solid var(--fio-claro); }
.indice__item { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 12px; padding: 16px 0; border-bottom: 1px solid var(--fio-claro); }
.indice__periodo { padding-top: 3px; font: 400 11px/1.5 var(--f-dados); font-variant-numeric: tabular-nums; color: var(--texto-acento); }
.indice__titulo { display: block; font-size: 17px; line-height: 1.35; color: var(--texto-titulo); }
.indice__detalhe { display: block; margin-top: 4px; font-size: 15px; line-height: 1.55; color: var(--texto-secundario); }
.indice--links .indice__item { display: block; padding: 0; }
.indice__link { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 12px; padding: 16px 8px; margin-inline: -8px; transition: background-color var(--toque); }
.indice__link:hover { background: var(--fundo-bloco); }
.bloco { padding-block: var(--esp-4); }
.bloco + .bloco { border-top: 1px solid var(--fio); }
.bloco__letra { display: block; margin-bottom: 20px; font: 400 11px/1 var(--f-dados); color: var(--texto-acento); }
.bloco__titulo { margin-bottom: 12px; font: 400 clamp(20px, 2.2vw, 28px)/1.2 var(--f-voz); color: var(--texto-titulo); }
.bloco__texto { font-size: 16px; line-height: 1.6; color: var(--texto-corpo); }
.bloco { position: relative; overflow: hidden; isolation: isolate; }
.bloco::before {
  content: ""; position: absolute; z-index: -1; left: var(--origem-x, 50%); top: var(--origem-y, 50%);
  width: var(--diametro, 230%); aspect-ratio: 1 / 1; border-radius: 50%; background: var(--fundo-escuro);
  transform: translate(-50%, -50%) scale(0); transition: transform 600ms var(--curva-revelacao); pointer-events: none;
}
.bloco__letra, .bloco__titulo, .bloco__texto { transition: color 600ms var(--curva-revelacao); }
@media (hover: hover) {
  .bloco:hover::before { transform: translate(-50%, -50%) scale(1); }
  .bloco:hover .bloco__letra { color: var(--texto-inverso-registro); }
  .bloco:hover .bloco__titulo { color: var(--texto-inverso); }
  .bloco:hover .bloco__texto { color: var(--texto-inverso-corpo); }
}
.atendimentos__acao, .textos__acao { margin-top: var(--esp-4); }
.cards { display: grid; gap: var(--esp-4); }
.cards > li { display: flex; }
.card-texto { position: relative; width: 100%; background: var(--fundo); transition: background-color var(--toque); }
.card-texto:hover { background: var(--fundo-bloco); }
.card-texto__corpo { padding-top: var(--esp-3); }
.card-texto__meta { font: 400 11px/1.5 var(--f-dados); color: var(--texto-acento); }
.card-texto__titulo { margin-top: 12px; font: 500 clamp(18px, 1.9vw, 28px)/1.25 var(--f-voz); color: var(--texto-titulo); text-wrap: balance; }
.card-texto__titulo a::after { content: ""; position: absolute; inset: 0; }
.card-texto__resumo { margin-top: 12px; font-size: 15px; line-height: 1.6; color: var(--texto-secundario); }
.card-texto .ligacao { margin-top: var(--esp-3); }
.card-texto:hover .ligacao::after { transform: scaleX(1); }
@supports selector(:has(a)) {
  .card-texto:has(a:focus-visible) { outline: 2px solid var(--fio-forte); outline-offset: 2px; }
  .card-texto__titulo a:focus-visible { outline: none; }
}
@media (min-width: 600px) {
  .blocos, .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; }
  .bloco, .bloco + .bloco { padding: clamp(22px, 2.8vw, 36px); border-top: 0; outline: 1px solid var(--fio); background: var(--fundo); }
  .card-texto { outline: 1px solid var(--fio); }
  .card-texto__corpo { padding: clamp(22px, 2.8vw, 36px); }
}
@media (min-width: 900px) { .blocos, .cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.blocos { display: grid; }
.contato { max-width: 720px; }
.dados { margin-top: var(--esp-5); border-top: 1px solid var(--fio-claro); }
.dados__linha { display: grid; grid-template-columns: minmax(0, 8em) minmax(0, 1fr); gap: 16px; padding: 11px 0; border-bottom: 1px solid var(--fio-claro); font: 400 12px/1.5 var(--f-dados); }
.dados dt { font-weight: 500; color: var(--texto-corpo); }
.dados dd { color: var(--texto-secundario); overflow-wrap: anywhere; }
.imas { display: none; }
@media (min-width: 900px) {
  .imas { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); grid-template-rows: repeat(8, minmax(0, 1fr)); place-items: center; align-self: start; aspect-ratio: 1 / 1; }
}
.imas span { display: block; width: 1px; height: 56%; background: var(--fio); transform: rotate(0deg); transition: transform var(--toque); }
.texto-cabecalho { padding-top: clamp(32px, 5vw, 72px); }
.texto-voltar { margin-bottom: var(--esp-4); }
.texto-meta { font: 400 12px/1.5 var(--f-dados); color: var(--texto-acento); }
.texto-titulo { margin-top: var(--esp-2); font: 300 clamp(28px, 3.6vw, 60px)/1.08 var(--f-voz); letter-spacing: -.02em; color: var(--texto-titulo); text-wrap: balance; }
.texto-linha-fina { margin-top: var(--esp-2); max-width: 40ch; font-size: clamp(17px, 1.5vw, 21px); line-height: 1.5; color: var(--texto-secundario); }
.texto-capa { margin-top: var(--esp-4); }
.texto-capa figcaption { margin-top: 8px; font: 400 12px/1.5 var(--f-dados); color: var(--texto-secundario); }
.texto-corpo { padding-block: var(--esp-5) var(--esp-4); }
.epigrafe { max-width: 52ch; margin-bottom: var(--esp-4); }
.epigrafe blockquote p { font: italic 400 clamp(17px, 1.5vw, 20px)/1.5 var(--f-voz); color: var(--texto-titulo); }
.epigrafe figcaption { margin-top: 8px; font: 400 12px/1.5 var(--f-dados); color: var(--texto-secundario); }
.corpo-l .destaque { max-width: 40ch; margin-block: var(--esp-4); padding-left: 18px; border-left: 2px solid var(--texto-acento); }
.corpo-l .destaque p { font: italic 300 clamp(19px, 2.2vw, 27px)/1.4 var(--f-voz); color: var(--texto-titulo); }
.nota-chamada { padding: 0 2px; font: 500 .7em/0 var(--f-dados); vertical-align: super; color: var(--texto-acento); }
.notas { margin-top: var(--esp-4); padding-top: var(--esp-2); border-top: 1px solid var(--fio-claro); }
.notas li { max-width: 68ch; font: 400 13px/1.6 var(--f-dados); color: var(--texto-secundario); }
.notas a, .texto-capa figcaption a { border-bottom: 1px solid var(--texto-acento); color: var(--texto-titulo); transition: border-color var(--toque); }
.notas a:hover, .texto-capa figcaption a:hover { border-bottom-color: var(--fio-forte); }
.notas ol { padding-left: 1.4em; list-style: decimal; }
.notas li::marker { color: var(--texto-acento); }
.corpo-l .aviso-texto { margin-top: var(--esp-4); font: 400 12px/1.5 var(--f-dados); }
.aviso-texto { max-width: 68ch; margin-top: var(--esp-4); padding-top: var(--esp-2); border-top: 1px solid var(--fio-claro); font: 400 12px/1.5 var(--f-dados); color: var(--texto-secundario); }
.contato-texto { padding: clamp(24px, 3vw, 40px); background: var(--fundo-bloco); }
.mais-textos { padding-block: var(--esp-5) var(--secao-y); }
.mais-textos .rotulo { margin-bottom: var(--esp-2); }
.rodape { padding-block: clamp(28px, 4vw, 52px); background: var(--fundo-escuro); color: var(--texto-inverso-corpo); }
.rodape__colunas { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: var(--esp-4) var(--medianiz); padding-bottom: var(--esp-4); border-bottom: 1px solid var(--fundo-escuro-alt); }
.rodape .assinatura__barra { background: var(--texto-inverso-corpo); }
.rodape .assinatura__nome { color: var(--texto-inverso); }
.rodape__descritor { margin-top: 8px; font: 400 11px/1.6 var(--f-dados); letter-spacing: .14em; text-transform: uppercase; color: var(--texto-inverso-registro); }
.rodape__crp { margin-top: 2px; font: 400 11px/1.6 var(--f-dados); color: var(--texto-inverso-registro); }
.rodape__titulo { margin-bottom: 4px; font: 600 11px/1.3 var(--f-interface); letter-spacing: .18em; text-transform: uppercase; color: var(--texto-inverso-registro); }
.rodape__lista a { display: flex; align-items: center; min-height: 44px; font: 500 12px/1.3 var(--f-interface); color: var(--texto-inverso-corpo); transition: color var(--toque); }
.rodape__lista a:hover { color: var(--texto-inverso); }
.rodape__avisos { display: grid; gap: 4px; padding-top: var(--esp-3); }
.rodape__avisos p { font: 400 12px/1.6 var(--f-dados); color: var(--texto-inverso-corpo); }
.rodape__avisos a { border-bottom: 1px solid var(--texto-inverso-registro); color: var(--texto-inverso); }
.rodape__copyright { margin-top: var(--esp-2); font: 400 11px/1.5 var(--f-dados); color: var(--texto-inverso-registro); }
.a-revelar { opacity: 0; transform: translateY(14px); }
.revelar-transicao { transition: opacity 420ms var(--curva-revelacao), transform 420ms var(--curva-revelacao); }
.fio-oculto { transform: scaleX(0); }
.fio-transicao { transition: transform 560ms var(--curva-fio); }
@media (prefers-reduced-motion: no-preference) {
  @view-transition { navigation: auto; }
  ::view-transition-old(root), ::view-transition-new(root) { animation-duration: 240ms; animation-timing-function: ease-in-out; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .001ms !important; animation-duration: .001ms !important; animation-iteration-count: 1 !important; }
  .a-revelar, .fio-oculto { opacity: 1; transform: none; }
}
