/* Navegação e rodapé — melhoria de legibilidade e acesso às seções.
   Isolado do painel administrativo, sem alterar o CSS dos formulários. */
html { scroll-padding-top: 102px; }
.anna-home section[id], .anna-home [id="localizacao"] { scroll-margin-top: 104px; }
.site-header .main-nav { display:flex; align-items:center; gap:clamp(10px,1.1vw,18px); }
.site-header .main-nav > a { font-size:13px; font-weight:600; white-space:nowrap; }
.anna-nav-more { position:relative; flex-shrink:0; }
.anna-nav-more > summary { display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;color:#3c3236;font-size:13px;font-weight:600;line-height:1.4;padding:12px 3px;white-space:nowrap; }
.anna-nav-more > summary::-webkit-details-marker { display:none; }
.anna-nav-more > summary::after { content:"";border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;width:6px;height:6px;transform:rotate(45deg) translateY(-2px);transition:transform .2s; }
.anna-nav-more[open] > summary::after { transform:rotate(225deg) translate(-2px,-2px); }
.anna-nav-more > summary:hover,.anna-nav-more[open] > summary { color:#a6596f; }
.anna-nav-dropdown { position:absolute;top:calc(100% + 5px);right:0;min-width:245px;padding:10px;background:#fff9fa;border:1px solid #ead7dd;border-radius:9px;box-shadow:0 18px 36px #4e2e3b25;display:grid;gap:2px;z-index:120; }
.anna-nav-dropdown a { padding:11px 13px;border-radius:6px;color:#55323d;font-size:14px;font-weight:600;line-height:1.25;text-decoration:none;white-space:nowrap; }
.anna-nav-dropdown a:hover,.anna-nav-dropdown a:focus-visible { color:#91495e;background:#f5e7ec; }
.site-header .main-nav a[aria-current="location"] { color:#a0526b; }
.site-header .main-nav a:focus-visible, .anna-nav-more summary:focus-visible { outline:2px solid #a96077;outline-offset:3px;border-radius:3px; }

/* Rodapé claro: texto escuro, contraste legível em links, hover e rodapé legal. */
.footer { background:#fff9fa;color:#482e38; }
.footer .footer-top h3 { color:#552d3b;font-size:17px;font-weight:700; }
.footer .footer-top p { color:#49313b;font-size:15px;line-height:1.8; }
.footer .footer-top > div:nth-child(n+2) a,
.footer .footer-top a, .footer .footer-top span,
.footer .footer-social-links a { color:#603d49; }
.footer .footer-top a:hover, .footer .footer-top a:focus-visible,
.footer .footer-social-links a:hover { color:#993a59;text-decoration:underline;text-underline-offset:4px; }
.footer .footer-top { grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1.2fr);column-gap:clamp(30px,4vw,72px); }
.footer .footer-top > div { min-width:0; }
.footer .footer-section-links { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:13px;width:100%; }
.footer .footer-section-links a { display:block!important;font-size:15px!important;line-height:1.35; }
.footer .footer-social-links { display:flex;align-items:flex-start;gap:13px 17px;flex-wrap:wrap;width:100%; }
.footer .footer-social-links a { font-size:15px!important;white-space:normal;line-height:1.4; }
.footer .footer-bottom { border-top-color:#dec8cf;color:#573641;font-size:13px; }
.footer .footer-bottom span,.footer .footer-bottom a { color:#573641; }
.footer .footer-bottom a:hover { color:#993a59; }
.footer a:focus-visible { outline:2px solid #a85c72;outline-offset:3px; }

/* Voltar ao topo: acima do WhatsApp existente, sem sobrepor o chatbot à esquerda. */
.anna-back-to-top {
  position:fixed;right:22px;bottom:88px;z-index:145;width:50px;height:50px;
  border:1px solid #a85b72;border-radius:50%;background:#a85b72;color:#fff;
  display:grid;place-items:center;cursor:pointer;box-shadow:0 9px 25px #56304442;
  transition:transform .18s,background .18s;
}
.anna-back-to-top[hidden] { display:none!important; }
.anna-back-to-top:hover { background:#88445a;transform:translateY(-3px); }
.anna-back-to-top svg { width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round; }
.anna-back-to-top:focus-visible { outline:3px solid #f1c657;outline-offset:3px; }

@media (max-width:1120px) {
  .site-header .main-nav { gap:10px; }
  .site-header .main-nav > a,.anna-nav-more > summary { font-size:12px; }
  .footer .footer-top { column-gap:30px; }
}
@media (max-width:850px) {
  html { scroll-padding-top:82px; }
  .anna-home section[id], .anna-home [id="localizacao"] { scroll-margin-top:82px; }
  .site-header .main-nav { display:none;align-items:stretch;gap:0;padding:18px 24px 25px;max-height:calc(100dvh - 70px);overflow-y:auto; }
  .site-header .main-nav.open { display:flex; }
  .site-header .main-nav > a { display:block;width:100%;padding:13px 5px;font-size:15px;color:#4d303a;border-bottom:1px solid #f1e0e6; }
  .anna-nav-more { width:100%; }
  .anna-nav-more > summary { justify-content:space-between;padding:14px 5px;font-size:15px;border-bottom:1px solid #f1e0e6; }
  .anna-nav-dropdown { position:static;min-width:0;border:0;border-radius:0;box-shadow:none;background:#f8edf0;padding:5px 8px 7px;gap:0; }
  .anna-nav-dropdown a { padding:12px 10px;font-size:14px;white-space:normal; }
  .footer .footer-top { grid-template-columns:1fr 1fr;gap:32px; }
  .footer .footer-top > div:first-child { grid-column:1/-1; }
  .footer .footer-section-links { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .footer .footer-top { grid-template-columns:1fr;row-gap:30px; }
  .footer .footer-top > div:first-child { grid-column:auto; }
  .footer .footer-section-links { grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px; }
  .footer .footer-top h3 { margin-bottom:14px; }
  .footer .footer-top a,.footer .footer-top p { font-size:14px; }
  .anna-back-to-top { right:14px;bottom:79px;width:46px;height:46px; }
}
@media (prefers-reduced-motion:reduce) {
  .anna-back-to-top,.anna-nav-more > summary::after { transition:none; }
}


/* Cabeçalho do artigo: separa "Voltar para o blog" da categoria.
   Aplica-se apenas à página de artigo, preservando os cards e a home. */
.article-header .article-heading-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 21px;
  margin: 0 0 17px;
  min-width: 0;
}
.article-header .article-heading-meta .back-link {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.article-header .article-heading-meta .back-link:hover,
.article-header .article-heading-meta .back-link:focus-visible {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.article-header .article-heading-meta .eyebrow {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin: 0;
  font-size: 12px;
  line-height: 1.6;
  letter-spacing: .15em;
  overflow-wrap: anywhere;
}
.article-header .article-heading-meta + h1 {
  margin-top: 12px;
}
@media (max-width: 600px) {
  .article-header .article-heading-meta {
    gap: 15px;
    margin-bottom: 13px;
  }
  .article-header .article-heading-meta .back-link { font-size: 14px; }
  .article-header .article-heading-meta .eyebrow { font-size: 11px; }
}
