/* ===================================================== */
/* RESET BÁSICO                                          */
/* ===================================================== */

/* Seletor universal: aplica regras a TODOS os elementos */
* {
  margin: 0;                /* Remove as margens padrão do navegador */
  padding: 0;               /* Remove os espaçamentos internos padrão */
  box-sizing: border-box;   /* Inclui padding e borda no cálculo do tamanho */
}

/* ===================================================== */
/* CORPO DA PÁGINA                                       */
/* ===================================================== */

/* Estilização geral do corpo do site */
body {
  font-family: Georgia, "Times New Roman", serif; /* Define a fonte padrão do site */
  background-color: #f3efdf; /* Cor de fundo bege clara */
  color: #1f2a2a;            /* Cor padrão do texto */
  line-height: 1.6;          /* Espaçamento entre linhas para melhor leitura */
  overflow-wrap: break-word; /* Quebra palavras/URLs longas em telas estreitas */
  min-height: 100vh;         /* Rodapé sempre no fim da tela */
  display: flex;             /* Organiza cabeçalho, conteúdo e rodapé em coluna */
  flex-direction: column;
}

/* ===================================================== */
/* CABEÇALHO FIXO                                        */
/* ===================================================== */

/* Estilo do cabeçalho principal */
.header {
  position: sticky;         /* Fica preso ao topo ao rolar, sem cobrir o conteúdo */
  top: 0;
  flex-shrink: 0;
  min-height: 80px;         /* Altura do cabeçalho */
  background-color: #f3efdf;/* Cor de fundo do cabeçalho */
  display: flex;            /* Ativa layout flexbox */
  align-items: center;      /* Centraliza os itens verticalmente */
  justify-content: space-between; /* Separa logo e menu */
  padding: 0 60px;          /* Espaçamento interno lateral */
  border-bottom: 1px solid rgba(0,0,0,0.15); /* Linha inferior sutil */
  z-index: 1000;            /* Garante que fique acima de outros elementos */
}

/* ===================================================== */
/* LOGO / NOME                                           */
/* ===================================================== */

/* Estilização do nome ou logotipo */
.logo {
  font-family: 'Playfair Display', serif; /* Fonte elegante */
  font-weight: 700;                       /* Negrito */
  white-space: nowrap;                   /* Evita quebra de linha */
  font-size: clamp(1.125rem, 4vw, 1.625rem);     /* Tamanho fluido */
}

/* ===================================================== */
/* MENU DE NAVEGAÇÃO                                     */
/* ===================================================== */

/* Estilo dos links do menu */
.menu a {
  font-family: 'Playfair Display', serif; /* Mantém coerência com a logo */
  text-decoration: none;                  /* Remove sublinhado */
  color: #1f2a2a;                         /* Cor do texto */
  padding: 8px 14px;                      /* Área clicável */
  border-radius: 4px;                     /* Cantos arredondados */

  /* 🔥 Tipografia fluida */
  font-size: clamp(0.875rem, 2.5vw, 1rem);    /* Diminui no mobile */

  transition: background-color 0.3s ease; /* Hover suave */
}

/* Container do menu */
.menu {
  display: flex;             /* Ativa layout flexbox */
  gap: 20px;                 /* Espaço entre os links do menu */
}

/* ===================================================== */
/* MENU E CABEÇALHO RESPONSIVO                           */
/* ===================================================== */

/* Ajustes para telas menores */
@media (max-width: 768px) {

  /* Cabeçalho em telas pequenas */
  .header {
    flex-direction: column;  /* Empilha logo e menu */
    padding: 10px;           /* Espaçamento interno reduzido */
  }

  /* Menu em telas pequenas */
  .menu {
    margin-top: 10px;        /* Espaço entre logo e menu */
    flex-wrap: wrap;         /* Permite quebra de linha */
    justify-content: center; /* Centraliza os links */
    gap: 8px 10px;            /* Reduz o espaço entre os links (agora são 5 itens) */
  }

  /* Links do menu um pouco mais compactos no celular */
  .menu a {
    padding: 6px 10px;
  }

  /* Acessibilidade também centralizada e com espaço no celular */
  .acessibilidade {
    margin-top: 10px;
    justify-content: center;
  }
}

/* ===================================================== */
/* EFEITO HOVER NO MENU                                  */
/* ===================================================== */

/* Estilo aplicado ao passar o mouse sobre o link */
.menu a:hover {
  background-color: #d6c2a1; /* Muda o fundo do link no hover */
}

/* ===================================================== */
/* CONTAINER PRINCIPAL                                   */
/* ===================================================== */

/* Área que envolve o conteúdo principal da página  */
.container {
  max-width: 1100px;         /* Largura máxima */
  margin: 0 auto;            /* Centraliza horizontalmente */
  padding: 70px 20px 0;      /* Espaço abaixo do cabeçalho e laterais */
  width: 100%;
}

@media (max-width: 800px) {
  .container { padding-top: 40px; }
}

/* ===================================================== */
/* SEÇÃO SOBRE                                           */
/* ===================================================== */

/* Bloco principal da seção "Sobre": foto e texto lado a lado */
.sobre {
  display: flex;
  align-items: center;
  gap: 60px;
  max-width: 1200px;
}

/* ===================================================== */
/* ELEMENTO MAIN                                         */
/* ===================================================== */

/* Área principal do conteúdo */
main {
  flex: 1;                   /* Faz o main ocupar o espaço disponível */
}

/* ===================================================== */
/* FOTO DA SEÇÃO SOBRE                                   */
/* ===================================================== */

/* Imagem em telas grandes */
.sobre-foto img {
  width: 460px;              /* Largura maior para desktop grande */
  height: auto;              /* Mantém proporção */
  border-radius: 50%;        /* Formato circular */
  object-fit: cover;         /* Ajuste correto da imagem */
}

/* Redução gradual da imagem conforme a tela diminui */
@media (max-width: 1200px) {
  .sobre-foto img {
    width: 400px;            /* Desktop médio */
  }
}

@media (max-width: 900px) {
  .sobre-foto img {
    width: 340px;            /* Tablets */
  }
}

@media (max-width: 600px) {
  .sobre-foto img {
    width: 260px;            /* Smartphones */
  }
}

/* Impede que a imagem encolha no flexbox */
.sobre-foto {
  flex-shrink: 0;            /* Mantém tamanho da imagem */
}

/* ===================================================== */
/* TEXTO DA SEÇÃO SOBRE                                  */
/* ===================================================== */

/* Título dentro do bloco de texto */
.sobre-texto h1 {
  font-size: clamp(2rem, 5vw, 2.625rem); /* Fonte responsiva com tamanho mínimo e máximo */
  margin-bottom: 20px;               /* Espaço abaixo do título */
}

/* Container do texto */
.sobre-texto {
  max-width: 560px;          /* Limita largura do texto */
}

/* Parágrafos da seção Sobre */
.sobre-texto p {
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  line-height: 1.7;
  color: rgba(0, 0, 0, 0.75);
  margin-bottom: 1.5rem;
}

/* ===================================================== */
/* RODAPÉ                                                */
/* ===================================================== */

/* Estilo geral do rodapé */
.rodape {
  background: linear-gradient(180deg, #26281F, #1f2119); /* Gradiente vertical escuro */
  padding: 1.8rem 4rem;                                 /* Espaçamento interno */
  border-top: 1px solid rgba(230, 212, 186, 0.15);       /* Linha superior sutil */
}

/* Container interno do rodapé */
.rodape-conteudo {
  max-width: 1200px;        /* Limita a largura do conteúdo */
  margin: auto;             /* Centraliza horizontalmente */
  display: flex;            /* Layout flexível */
  justify-content: space-between; /* Distribui os elementos */
  align-items: center;      /* Centraliza verticalmente */
  color: rgba(230, 212, 186, 0.75); /* Cor padrão do texto */
}

/* ===================================================== */
/* MARCA DO RODAPÉ                                       */
/* ===================================================== */

/* Estilo da marca / assinatura */
.rodape-marca {
  font-family: 'Playfair Display', serif; /* Fonte serifada elegante */
  font-size: 1.1rem;                      /* Tamanho da fonte */
  font-weight: 700;                       /* Negrito */
  letter-spacing: 1px;                    /* Espaçamento entre letras */
}

/* ===================================================== */
/* COPYRIGHT                                             */
/* ===================================================== */

/* Texto de direitos autorais */
.rodape-copy {
  font-family: 'Inter', sans-serif; /* Fonte sem serifa */
  font-size: 0.75rem;              /* Fonte pequena */
  text-align: center;              /* Centraliza o texto */
}

/* ===================================================== */
/* PROPÓSITO                                             */
/* ===================================================== */

/* Texto complementar do rodapé */
.rodape-proposito {
  font-family: 'Inter', sans-serif;          /* Fonte sem serifa */
  font-size: 0.8rem;                        /* Fonte menor */
  color: rgba(230, 212, 186, 0.6);           /* Cor mais suave */
}

/* Link de contato dentro do rodapé (herda a cor clara em vez do azul padrão) */
.rodape-proposito a {
  color: rgba(230, 212, 186, 0.85);
  text-decoration: none;
  display: inline-block;
  padding: 4px 0;
}

.rodape-proposito a:hover {
  text-decoration: underline;
}

/* ===================================================== */
/* RESPONSIVIDADE DO RODAPÉ                              */
/* ===================================================== */

/* Ajustes para telas menores */
@media (max-width: 768px) {
  .rodape-conteudo {
    flex-direction: column;  /* Empilha os elementos verticalmente */
    gap: 0.6rem;             /* Espaço entre os itens */
    text-align: center;      /* Centraliza o texto */
  }
}

/* ===================================================== */
/* SEÇÃO DE MÍDIAS SOCIAIS                                */
/* ===================================================== */

/* Container principal da seção social */
.social {
  max-width: 1100px;         /* Largura máxima do conteúdo */
  margin: 80px auto 40px auto; /* Espaçamento externo (topo, laterais automáticas, base) */
  padding: 0 20px;           /* Espaçamento interno lateral */
  text-align: center;        /* Centraliza o conteúdo textual */
}

/* Título da seção social */
.social h2 {
  font-size: 1.75rem;        /* Tamanho do título */
  margin-bottom: 25px;      /* Espaço abaixo do título */
  color: #1f2a2a;            /* Cor do texto */
}

/* ===================================================== */
/* LINKS DAS MÍDIAS SOCIAIS                               */
/* ===================================================== */

/* Container dos links */
.social-links {
  display: flex;             /* Layout flexível */
  flex-wrap: wrap;           /* Permite quebra de linha */
  justify-content: center;   /* Centraliza os links */
  gap: 18px;                 /* Espaço entre os links */
}

/* Estilo individual dos links */
.social-links a {
  text-decoration: none;     /* Remove sublinhado */
  color: #1f2a2a;            /* Cor do texto */
  border: 1px solid #1f2a2a; /* Borda visível */
  padding: 8px 14px;         /* Área clicável confortável */
  border-radius: 25px;       /* Formato de botão arredondado */
  font-size: 0.875rem;       /* Tamanho da fonte */
  transition: all 0.3s ease; /* Animação suave para hover */
}

/* ===================================================== */
/* HOVER DOS LINKS                                       */
/* ===================================================== */

/* Estilo ao passar o mouse sobre os links */
.social-links a:hover {
  background-color: #1f2a2a; /* Fundo escuro no hover */
  color: #e9d8be;            /* Texto claro no hover */
}

/* ===================================================== */
/* AJUSTE RESPONSIVO FINAL DA SEÇÃO SOBRE                */
/* ===================================================== */

/* Em telas médias, centraliza tudo */
@media (max-width: 900px) {
  .sobre {
    flex-direction: column;  /* Empilha imagem e texto */
    align-items: center;     /* Centraliza os itens */
    text-align: center;      /* Centraliza o texto */
  }
}

/* ===================================================== */
/* SEÇÃO FORMAÇÃO / TRAJETÓRIA                           */
/* ===================================================== */

/* Container principal da seção de formação */
.timeline-section {
  background-color: #f3efdf; /* Fundo bege */
  padding: 70px 2rem 6rem;   /* Espaçamento interno */
  width: 100%;
  text-align: center;        /* Centraliza textos */
}

/* Rótulo pequeno acima do título */
.timeline-label {
  font-family: 'Inter', sans-serif; /* Fonte sem serifa */
  letter-spacing: 2px;             /* Espaçamento entre letras */
  font-size: 0.75rem;              /* Fonte pequena */
  color: #3D2821;                  /* Cor marrom escuro */
}

/* Título principal da seção */
.timeline-section h1 {
  font-family: 'Playfair Display', serif; /* Fonte serifada elegante */
  font-size: clamp(1.8rem, 4vw, 2.8rem); /* Reduz no mobile */
  margin: 1rem 0 0.6rem;                 /* Espaçamento superior e inferior */
  color: #26281F;                        /* Cor escura */
}

/* Parágrafo de introdução abaixo do título */
.timeline-intro {
  max-width: 640px;
  margin: 0 auto 3rem;
  font-family: 'Inter', sans-serif;
  color: rgba(0,0,0,0.65);
  font-size: 0.95rem;
}

/* ===================================================== */
/* LINHA DO TEMPO                                       */
/* ===================================================== */

/* Container da timeline */
.timeline {
  position: relative;        /* Referência para elementos absolutos */
  max-width: 900px;          /* Largura máxima */
  margin: auto;              /* Centraliza horizontalmente */
}

/* Linha vertical central da timeline */
.timeline::before {
  content: '';               /* Necessário para pseudo-elemento */
  position: absolute;        /* Posicionamento absoluto */
  left: 50%;                 /* Centraliza horizontalmente */
  top: 0;                    /* Início no topo */
  width: 2px;                /* Espessura da linha */
  height: 100%;              /* Altura total da timeline */
  background-color: rgba(0,0,0,0.25); /* Cor suave */
  transform: translateX(-50%); /* Ajuste fino de centralização */
}

/* ===================================================== */
/* ITENS DA TIMELINE                                     */
/* ===================================================== */

/* Estilo base de cada item */
.timeline-item {
  width: 45%;                /* Ocupa menos da metade da largura */
  padding: 1.5rem 2rem;      /* Espaçamento interno */
  position: relative;        /* Referência para o marcador */
  margin-bottom: -3rem;      /* Aproxima os itens verticalmente */
}

/* Marcador circular de cada item */
.timeline-item::before {
  content: '';               /* Necessário para o pseudo-elemento */
  position: absolute;        /* Posicionamento relativo ao item */
  top: 1.5rem;               /* Alinha verticalmente ao texto */
  width: 10px;               /* Largura do ponto */
  height: 10px;              /* Altura do ponto */
  background-color: #3D2821; /* Cor do marcador */
  border-radius: 50%;        /* Formato circular */
}

/* ===================================================== */
/* ITENS ALINHADOS À ESQUERDA                             */
/* ===================================================== */

/* Item posicionado à esquerda da linha */
.timeline-item.left {
  text-align: right;         /* Texto alinhado à direita */
  left: 0;                   /* Posicionado à esquerda */
}

/* Marcador do item à esquerda */
.timeline-item.left::before {
  right: -36px;              /* Posiciona o ponto próximo à linha central */
}

/* ===================================================== */
/* ITENS ALINHADOS À DIREITA                              */
/* ===================================================== */

/* Item posicionado à direita da linha */
.timeline-item.right {
  left: 55%;                 /* Move o item para a direita */
  text-align: left;          /* Texto alinhado à esquerda */
}

/* Marcador do item à direita */
.timeline-item.right::before {
  left: -36px;               /* Posiciona o ponto próximo à linha central */
}

/* ===================================================== */
/* TIMELINE EM TELAS PEQUENAS (CELULAR)                   */
/* ===================================================== */

/* Em telas estreitas, o layout em zigue-zague (colunas de 45%) não cabe.
   Aqui a timeline vira uma única coluna, com a linha e os marcadores
   alinhados à esquerda. */
@media (max-width: 700px) {

  /* Linha vertical passa a ficar encostada à esquerda */
  .timeline::before {
    left: 10px;
    transform: none;
  }

  /* Todos os itens ocupam a largura toda e ficam alinhados à esquerda */
  .timeline-item {
    width: 100%;
    left: 0;
    text-align: left;
    padding: 1.2rem 1rem 1.2rem 2.5rem;
    margin-bottom: 1.5rem;    /* Espaço positivo entre os itens (sem sobreposição) */
  }

  .timeline-item.left,
  .timeline-item.right {
    left: 0;
    text-align: left;
  }

  /* Marcadores dos dois tipos de item ficam no mesmo lugar, perto da linha */
  .timeline-item.left::before,
  .timeline-item.right::before {
    left: 4px;
    right: auto;
    top: 1.3rem;
  }
}

/* ===================================================== */
/* CONTEÚDO DOS ITENS                                    */
/* ===================================================== */

/* Data da formação */
.timeline-date {
  font-size: 0.8rem;         /* Fonte pequena */
  font-family: 'Inter', sans-serif; /* Fonte sem serifa */
  color: rgba(0,0,0,0.6);    /* Cor suave */
}

/* Título principal do item */
.timeline-item h2 {
  font-family: 'Playfair Display', serif; /* Fonte elegante */
  font-size: 1.2rem;                     /* Tamanho médio */
  margin: 0.5rem 0 0.2rem;               /* Espaçamento */
  color: #26281F;                        /* Cor escura */
}

/* Subtítulo (instituição) */
.timeline-item h3 {
  font-size: 0.9rem;         /* Fonte menor */
  font-weight: 400;          /* Peso normal */
  color: rgba(0,0,0,0.6);    /* Cor suave */
  margin-bottom: 0.8rem;     /* Espaço inferior */
}

/* Texto descritivo */
.timeline-item p {
  font-size: 0.95rem;        /* Tamanho do texto */
  line-height: 1.6;          /* Espaçamento entre linhas */
}

/* ===================================================== */
/* ACESSIBILIDADE  */
/* ===================================================== */

/* FOCO VISÍVEL PARA NAVEGAÇÃO POR TECLADO: quem navega com Tab sabe onde está. */

a:focus-visible,
button:focus-visible,
input:focus-visible,
summary:focus-visible {
  outline: 3px solid #3D2821; /* Contorno visível */
  outline-offset: 3px;       /* Afasta da borda */
}

/* Em fundos escuros (rodapé, faixa de CTA, aviso de cookies) o contorno fica claro */
.rodape a:focus-visible,
.cta-banner a:focus-visible,
.cookie-banner a:focus-visible,
.cookie-banner button:focus-visible {
  outline-color: #E6D4BA;
}

/* Texto disponível apenas para leitores de tela */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Respeita quem prefere menos animação */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition: none !important;
    scroll-behavior: auto !important;
  }
}

/* LINK "PULAR PARA CONTEÚDO"                            */

.skip-link {
  position: absolute;         /* Remove do fluxo normal */
  top: -100px;                /* Esconde fora da tela */
  left: 10px;
  background-color: #26281F;  /* Fundo escuro (contraste real com texto branco) */
  color: #ffffff;             /* Texto branco */
  padding: 8px 12px;
  border-radius: 4px;
  text-decoration: none;
  z-index: 2000;
}

/* Torna visível quando recebe foco */
.skip-link:focus {
  top: 10px;                  /* Aparece na tela */
  outline: 3px solid #E6D4BA;
  outline-offset: 2px;
}

/* BOTÕES DE ACESSIBILIDADE        */

.acessibilidade {
  display: flex;              /* Mostra os botões lado a lado */
  gap: 8px;                   /* Espaço entre eles */
  align-items: center;        /* Alinha verticalmente */
}

.acessibilidade button {
  background-color: transparent;
  border: 1px solid #1f2a2a;
  color: #1f2a2a;
  font-size: 0.9rem;
  padding: 4px 8px;
  cursor: pointer;
}

/* ===================================================== */
/* BREADCRUMBS (trilha de navegação)                     */
/* ===================================================== */

.breadcrumb {
  font-family: 'Inter', sans-serif;
  font-size: 0.82rem;
  color: rgba(0,0,0,0.65);
  margin-bottom: 18px;
  text-align: left;
}

.breadcrumb ol {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
  padding: 0;
}

.breadcrumb li {
  display: flex;
  align-items: center;
  gap: 6px;
}

.breadcrumb li:not(:last-child)::after {
  content: '/';
  color: rgba(0,0,0,0.3);
}

.breadcrumb a {
  color: #3D2821;
  text-decoration: none;
  display: inline-block;
  padding: 3px 0;
}

.breadcrumb a:hover {
  text-decoration: underline;
}

.breadcrumb [aria-current="page"] {
  color: rgba(0,0,0,0.7);
  font-weight: 500;
}

/* ===================================================== */
/* SELOS DE AUTORIDADE / CONFIANÇA                       */
/* ===================================================== */

.trust-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 18px 0 0;
}

.trust-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(61, 40, 33, 0.08);
  border: 1px solid rgba(61, 40, 33, 0.2);
  color: #3D2821;
  font-family: 'Inter', sans-serif;
  font-size: 0.78rem;
  font-weight: 500;
  padding: 6px 12px;
  border-radius: 20px;
}

/* ===================================================== */
/* FAIXA DE CTA (chamada para ação) — usada em várias páginas */
/* ===================================================== */

.cta-banner {
  max-width: 1100px;
  margin: 50px auto 60px;
  padding: 34px 30px;
  background: linear-gradient(135deg, #3D2821, #26281F);
  border-radius: 14px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.cta-banner-text h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(1.2rem, 3vw, 1.5rem);
  color: #f3efdf;
  margin: 0 0 6px;
}

.cta-banner-text p {
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  color: rgba(230, 212, 186, 0.85);
  margin: 0;
  max-width: 520px;
}

.cta-banner-btn {
  flex-shrink: 0;
  display: inline-block;
  background: #E6D4BA;
  color: #26281F;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 0.92rem;
  text-decoration: none;
  padding: 13px 26px;
  border-radius: 8px;
  transition: opacity 0.15s ease;
}

.cta-banner-btn:hover {
  opacity: 0.85;
}

@media (max-width: 700px) {
  .cta-banner { padding: 26px 22px; flex-direction: column; align-items: flex-start; }
}

/* ===================================================== */
/* AVISO DE COOKIES (LGPD)                                */
/* ===================================================== */

.cookie-banner {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 3000;
  background: #26281F;
  color: #f3efdf;
  padding: 16px 20px;
  display: none;
  align-items: center;
  justify-content: center;
  gap: 18px;
  flex-wrap: wrap;
  box-shadow: 0 -4px 18px rgba(0,0,0,0.2);
}

.cookie-banner.cookie-visible { display: flex; }

.cookie-banner p {
  font-family: 'Inter', sans-serif;
  font-size: 0.85rem;
  margin: 0;
  max-width: 640px;
  color: rgba(243, 239, 223, 0.9);
}

.cookie-banner p a {
  color: #E6D4BA;
  text-decoration: underline;
}

.cookie-banner-btn {
  flex-shrink: 0;
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 0.85rem;
  background: #E6D4BA;
  color: #26281F;
  border: none;
  padding: 10px 20px;
  border-radius: 8px;
  cursor: pointer;
}

.cookie-banner-btn:hover { opacity: 0.88; }

/* ===================================================== */
/* PÁGINAS LEGAIS (Privacidade / Cookies)                 */
/* ===================================================== */

.legal-page {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  padding: 70px 20px 60px;
  font-family: 'Inter', sans-serif;
  color: #1f2a2a;
}

@media (max-width: 800px) {
  .legal-page, .timeline-section { padding-top: 40px; }
}

.legal-page h1 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(1.8rem, 4vw, 2.4rem);
  color: #26281F;
  margin: 0.6rem 0 0.4rem;
}

.legal-page .legal-updated {
  font-size: 0.82rem;
  color: rgba(0,0,0,0.65);
  margin-bottom: 30px;
}

.legal-page h2 {
  font-family: 'Playfair Display', serif;
  font-size: 1.3rem;
  color: #26281F;
  margin: 34px 0 12px;
}

.legal-page p, .legal-page li {
  font-size: 0.95rem;
  line-height: 1.7;
  color: rgba(0,0,0,0.78);
}

.legal-page ul { padding-left: 22px; }

.legal-page a { color: #3D2821; }

/* Link para políticas no rodapé */
.rodape-legal {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.rodape-legal a {
  color: rgba(230, 212, 186, 0.85);
  text-decoration: none;
  font-size: 0.85rem;
  display: inline-block;
  padding: 3px 0;
}

.rodape-legal a:hover { text-decoration: underline; }
