/* ============================================================
   Cão.Com — folha de ajustes da White Window
   Carrega DEPOIS do Elementor. Só corrige; não redesenha.

   Valores medidos no CSS do próprio site (elementor-kit-81):
     azul #265F8F · verde #40BC9C · fundo #FFFAF5
     corpo 13px desktop / 12px mobile, Poppins, letter-spacing 1px
     imagens com opacity 0.75 · botões do hero a 10px no celular
   Tudo aqui é reversível: apagar este arquivo devolve o site ao original.
   ============================================================ */

:root {
  --ww-azul: #265F8F;
  --ww-azul-escuro: #1b4a70;
  --ww-verde: #40BC9C;         /* a cor da marca — fica em elemento grande */
  --ww-verde-texto: #12795F;   /* versão legível: 5,3:1 sobre branco */
  --ww-texto: #1f2124;
  --ww-texto-suave: #4a5560;
  --ww-borda: #dfe5ea;
  --ww-zap: #128C7E;           /* verde WhatsApp escuro, 4,8:1 com texto branco */
}

/* ---------- 1. AS IMAGENS ESTAVAM A 75% ----------
   O tema aplica opacity:.75 em TODA imagem do site — logo, equipe, fotos de
   post, tudo lavado. Não é efeito de hover: é o estado normal. */
.elementor-kit-81 img,
.elementor img,
img {
  opacity: 1 !important;
}

/* ---------- 2. TAMANHO DE TEXTO ----------
   13px no desktop e 12px no celular é pequeno demais para leitura corrida.
   ⚠️ NÃO se mexe na variável global do Elementor: o tema calcula padding e
   margem em `em` sobre ela, e subir a base infla o espaçamento do site todo.
   Por isso o ajuste é direto nos elementos de texto. */
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-widget-theme-post-content,
.elementor-widget-theme-post-content p,
.elementor-widget-theme-post-content li,
.entry-content p,
.entry-content li {
  font-size: 16.5px;
  line-height: 1.72;
  letter-spacing: normal; /* o tema usa 1px, que espalha demais o texto corrido */
  color: var(--ww-texto-suave);
}

@media (max-width: 767px) {
  .elementor-widget-text-editor,
  .elementor-widget-text-editor p,
  .elementor-widget-theme-post-content,
  .elementor-widget-theme-post-content p,
  .elementor-widget-theme-post-content li,
  .entry-content p, .entry-content li {
    font-size: 16px;
    line-height: 1.68;
  }
}

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }

/* ---------- 3. O TÍTULO DO POST ----------
   Os posts não mostravam o título em lugar nenhum da página. */
.ww-titulo-post {
  font-family: "Nunito", system-ui, sans-serif;
  font-size: clamp(28px, 4.2vw, 40px);
  line-height: 1.18;
  font-weight: 700;
  color: var(--ww-texto);
  margin: 0 0 .7em;
  letter-spacing: -.01em;
}

/* ---------- 4. HIERARQUIA DENTRO DO POST ---------- */
.elementor-widget-theme-post-content h2,
.entry-content h2 { font-size: clamp(23px, 3vw, 29px); line-height: 1.25; margin: 1.9em 0 .55em; color: var(--ww-texto); }
.elementor-widget-theme-post-content h3,
.entry-content h3 { font-size: clamp(19px, 2.3vw, 23px); line-height: 1.3; margin: 1.5em 0 .45em; color: var(--ww-texto); }
.elementor-widget-theme-post-content h4,
.entry-content h4 { font-size: 18px; line-height: 1.35; margin: 1.3em 0 .4em; }

/* ---------- 5. CONTRASTE ----------
   O verde da marca (#40BC9C) dá 2,36:1 sobre branco — abaixo do mínimo de
   4,5:1. Ele continua nos blocos grandes; em TEXTO e LINK usa a versão escura. */
a:not(.elementor-button):not([class*="icon"]) { color: var(--ww-verde-texto); }
a:not(.elementor-button):hover { color: var(--ww-azul); }

.elementor-button[style*="40BC9C"],
.elementor-button.elementor-button-success { background-color: var(--ww-zap) !important; }

/* ---------- 6. OS BOTÕES DE CONTATO NO CELULAR ----------
   Telefone e WhatsApp do hero estavam a 10px — o menor texto da página era
   justamente a ação mais importante dela. */
@media (max-width: 767px) {
  .elementor-element-8b3405f .elementor-button,
  .elementor-element-ee2b222 .elementor-button,
  .elementor-element-6c7d631 .elementor-button,
  .elementor-element-761cb81 .elementor-button,
  .elementor-widget-button .elementor-button {
    font-size: 16px !important;
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 20px;
    line-height: 1.2 !important;
  }
}

/* ---------- 7. OS CARDS DO HERO NO CELULAR ----------
   As duas colunas ficavam a 50% cada, dando 181px de largura numa tela de
   390px. Em celular elas empilham. */
@media (max-width: 767px) {
  .elementor-element-08f86f0,
  .elementor-element-0b32c20 {
    width: 100% !important;
    margin-bottom: 18px;
  }
}

/* ---------- 8. O HERO NO CELULAR ----------
   Havia 80% de padding embaixo — 312px de foto vazia numa tela de 390px,
   empurrando todo o conteúdo para fora da primeira tela. */
@media (max-width: 767px) {
  .elementor-element-371ae7b9 { padding: 92px 18px 60px !important; }
}

/* ---------- 9. FOCO VISÍVEL (teclado e leitor de tela) ---------- */
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible, .elementor-button:focus-visible {
  outline: 3px solid var(--ww-verde-texto);
  outline-offset: 2px;
  border-radius: 3px;
}
#content:focus { outline: none; }

/* ---------- 10. CONTATO CLICÁVEL ---------- */
a[href^="tel:"], a[href^="mailto:"] {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  white-space: nowrap;
}
a[href^="tel:"]:hover, a[href^="mailto:"]:hover { color: var(--ww-azul); }
.elementor-location-footer a[href^="tel:"],
.elementor-location-footer a[href^="mailto:"] { border-bottom-color: rgba(255,255,255,.45); }

/* ---------- 11. EMERGÊNCIA 24H ----------
   É um hospital 24 horas: em emergência ninguém rola a página atrás do telefone. */
.ww-barra-mobile { display: none; }
@media (max-width: 767px) {
  .ww-barra-mobile {
    display: grid;
    grid-template-columns: 1fr 1fr;
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 9998;
    box-shadow: 0 -2px 14px rgba(0,0,0,.17);
  }
  .ww-barra-mobile a {
    display: flex; align-items: center; justify-content: center; gap: 8px;
    padding: 15px 8px; font-size: 15.5px; font-weight: 700;
    color: #fff !important; text-decoration: none; border: 0;
  }
  .ww-barra-mobile .ww-ligar { background: var(--ww-azul); }
  .ww-barra-mobile .ww-zap { background: var(--ww-zap); }
  body { padding-bottom: 54px; }
  .wa__btn_popup, .wa__stt { bottom: 68px !important; }
}

/* ---------- 12. IMAGENS ---------- */
.entry-content img,
.elementor-widget-theme-post-content img,
.elementor-widget-image img { max-width: 100%; height: auto; }
/* corrigido 10/09/2026: este fundo pintava uma caixa cinza atras da logo,
   que e PNG com transparencia. Fundo so onde a miniatura precisa dele. */
.entry-content img { background-color: #f2f5f7; }
.elementor-widget-image img { background-color: transparent; }

/* capa do blog com proporção fixa: as imagens têm tamanhos diferentes e o grid
   ficava desalinhado */
.elementor-posts .elementor-post__thumbnail img {
  aspect-ratio: 16 / 9; object-fit: cover; width: 100%;
}

/* ---------- 13. TABELA DENTRO DE POST ---------- */
.entry-content table, .elementor-widget-theme-post-content table {
  display: block; overflow-x: auto; max-width: 100%; border-collapse: collapse;
}
.entry-content table td, .entry-content table th,
.elementor-widget-theme-post-content table td { border: 1px solid var(--ww-borda); padding: 9px 12px; }

/* ---------- 14. FORMULÁRIO ---------- */
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form textarea {
  border: 1px solid var(--ww-borda); border-radius: 6px;
  padding: 12px 14px;
  font-size: 16px; /* abaixo de 16px o iPhone dá zoom sozinho ao focar o campo */
  width: 100%;
}
.wpforms-form input:focus, .wpforms-form textarea:focus { border-color: var(--ww-azul); outline: none; }
.wpforms-form button[type="submit"] { cursor: pointer; min-height: 48px; }

/* ---------- 15. IMPRESSÃO ----------
   Tutor imprime orientação de pós-operatório e de vacinação. */
@media print {
  header, footer, nav, .ww-barra-mobile, .wa__btn_popup,
  .elementor-location-header, .elementor-location-footer { display: none !important; }
  body { padding: 0; font-size: 12pt; background: #fff; }
  .ww-titulo-post { font-size: 20pt; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9pt; color: #666; }
}

/* ---------- 16. MOVIMENTO ----------
   O tema anima quase tudo. Quem pediu menos movimento no sistema recebe menos. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
  .elementor-invisible { opacity: 1 !important; }
}

/* ---------- 17. CHAMADA NO FIM DO ARTIGO ----------
   90 dos 121 posts terminavam sem nenhum caminho de contato. Quem lê até o fim
   é justamente quem está mais perto de agendar. */
.ww-cta-post {
  margin: 44px 0 8px;
  padding: 28px 26px;
  background: linear-gradient(180deg, #f4f9f8 0%, #eef6f4 100%);
  border: 1px solid #d6e8e3;
  border-left: 5px solid var(--ww-verde);
  border-radius: 12px;
}
.ww-cta-titulo {
  margin: 0 0 8px !important;
  font-family: "Nunito", system-ui, sans-serif;
  font-size: 21px !important;
  font-weight: 700;
  color: var(--ww-azul) !important;
  line-height: 1.3 !important;
}
.ww-cta-texto {
  margin: 0 0 20px !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: var(--ww-texto-suave) !important;
}
.ww-cta-botoes { display: flex; flex-wrap: wrap; gap: 12px; }
.ww-cta-post a {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 14px 26px; border-radius: 999px;
  font-weight: 700; font-size: 16px; text-decoration: none; border: 0;
  min-height: 50px;
}
.ww-cta-zap { background: var(--ww-zap); color: #fff !important; }
.ww-cta-zap:hover { background: #0e7568; color: #fff !important; }
.ww-cta-tel { background: #fff; color: var(--ww-azul) !important; border: 2px solid var(--ww-azul) !important; }
.ww-cta-tel:hover { background: var(--ww-azul); color: #fff !important; }
@media (max-width: 520px) {
  .ww-cta-botoes { flex-direction: column; }
  .ww-cta-post a { width: 100%; }
}

/* ---------- 18. LEIA TAMBÉM ----------
   104 dos 121 posts não recebiam link de nenhum outro. Sem malha interna, o
   Google lê o blog como 121 páginas soltas e o leitor termina o texto num beco. */
.ww-relacionados {
  margin: 40px 0 0;
  padding: 22px 24px;
  background: #fbfbfa;
  border: 1px solid var(--ww-borda);
  border-radius: 12px;
}
.ww-rel-titulo {
  margin: 0 0 12px !important;
  font-family: "Nunito", system-ui, sans-serif;
  font-size: 13px !important;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--ww-azul) !important;
}
.ww-relacionados ul { margin: 0; padding: 0; list-style: none; }
.ww-relacionados li { margin: 0; padding: 0; border-top: 1px solid #eef1f3; }
.ww-relacionados li:first-child { border-top: 0; }
.ww-relacionados a {
  display: block;
  padding: 11px 0;
  font-size: 16.5px;
  line-height: 1.45;
  font-weight: 600;
  color: var(--ww-texto) !important;
  text-decoration: none;
  border: 0;
}
.ww-relacionados a:hover { color: var(--ww-azul) !important; }
@media (max-width: 520px) {
  .ww-relacionados { padding: 18px 18px; }
  .ww-relacionados a { font-size: 16px; }
}

/* ---------- 19. AVISO DE REVISÃO CLÍNICA (só no clone) ----------
   Marca página cujo conteúdo não pode ir ao ar como está. Sai na virada. */
.ww-alerta-revisao {
  margin: 0 0 28px;
  padding: 18px 20px;
  background: #fdecea;
  border: 1px solid #f0b4ac;
  border-left: 5px solid #c0392b;
  border-radius: 10px;
  color: #7d2018;
  font-size: 16px;
  line-height: 1.6;
}
.ww-alerta-revisao strong { display: block; margin-bottom: 6px; font-size: 17px; }

/* ---------- 20. A CAPA DO POST ----------
   A imagem de capa existia só no og:image — aparecia quando alguém mandava o
   link no WhatsApp e em lugar nenhum do site. Agora abre o artigo.
   As capas têm proporções diferentes (1920x1081, 1024x512, 1890x945...); o
   corte é no CSS para não distorcer nenhuma foto. */
.ww-capa-post {
  margin: 0 0 26px;
  padding: 0;
  border-radius: 14px;
  overflow: hidden;
  background: #eef2f4;
  line-height: 0;
}
.ww-capa-post img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
}
@media (max-width: 520px) {
  .ww-capa-post { border-radius: 10px; margin-bottom: 20px; }
}

/* ---------- 21. OS CARDS DA LISTAGEM ----------
   Miniatura de 800x450 gerada no build: a listagem carregaria 64 fotos de até
   1,9 MB cada. E a proporção fixa é o que mantém o grid alinhado. */
.ww-card {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 20px;
  align-items: start;
}
.ww-card-img {
  display: block;
  border-radius: 10px;
  overflow: hidden;
  background: #eef2f4;
  line-height: 0;
}
.ww-card-img img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
  transition: transform .3s ease;
}
.ww-card-img:hover img { transform: scale(1.04); }
.ww-card-txt { min-width: 0; }
.ww-card-txt p { margin: 7px 0 0; }

@media (max-width: 640px) {
  .ww-card { grid-template-columns: 1fr; gap: 12px; }
  .ww-card-img { border-radius: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  .ww-card-img img { transition: none; }
  .ww-card-img:hover img { transform: none; }
}




/* ============================================================
   22. NOVO DESIGN DO BLOG (WHITE WINDOW) - SÓ BUSCA
   ============================================================ */

/* Ocultação defensiva dos blocos solicitados */
.elementor-element-7b608b55 { display: none !important; }
.elementor-element-eada997 { display: none !important; }

/* Container principal do Blog */
.ww-blog-main {
  background: #FFFAF5;
  min-height: 80vh;
  padding: 40px 0 90px;
}

.ww-blog-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Breadcrumb */
.ww-blog-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #7b8893;
  margin-bottom: 24px;
}
.ww-blog-breadcrumb a {
  color: #265F8F !important;
  text-decoration: none;
  font-weight: 600;
}
.ww-blog-breadcrumb a:hover {
  text-decoration: underline;
}

/* Header do Blog */
.ww-blog-header {
  margin-bottom: 30px;
}
.ww-blog-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #e4eef6;
  color: #1b4a70;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 999px;
  margin-bottom: 12px;
}
.ww-blog-title {
  font-family: 'Nunito', 'Poppins', system-ui, sans-serif;
  font-size: clamp(32px, 4.2vw, 44px);
  font-weight: 800;
  color: #1a2228;
  line-height: 1.18;
  margin: 0 0 12px;
  letter-spacing: -0.02em;
}
.ww-blog-sub {
  font-size: 17.5px;
  line-height: 1.6;
  color: #4f5b66;
  max-width: 700px;
  margin: 0;
}

/* Barra de Busca Limpa (Sem pills de categoria) */
.ww-blog-search-box {
  background: #ffffff;
  border: 1.5px solid #e1e7ec;
  border-radius: 16px;
  padding: 16px 20px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
  margin-bottom: 32px;
  max-width: 680px;
}
.ww-blog-search-form {
  display: flex;
  gap: 12px;
  width: 100%;
  margin: 0;
}
.ww-blog-search-wrap {
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
}
.ww-blog-search-icon {
  position: absolute;
  left: 16px;
  color: #8b99a6;
  pointer-events: none;
}
.ww-blog-search-input {
  width: 100%;
  padding: 13px 16px 13px 44px;
  font-size: 15.5px;
  font-family: inherit;
  border: 1.5px solid #d4dee5;
  border-radius: 10px;
  color: #1f2124;
  background: #fafbfc;
  transition: all 0.2s ease;
  box-sizing: border-box;
}
.ww-blog-search-input:focus {
  outline: none;
  background: #ffffff;
  border-color: #265F8F;
  box-shadow: 0 0 0 3px rgba(38, 95, 143, 0.15);
}
.ww-blog-search-btn {
  padding: 13px 28px !important;
  background-color: #265F8F !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease;
  white-space: nowrap;
}
.ww-blog-search-btn:hover {
  background-color: #1b4a70 !important;
}

/* Barra de Status / Contagem */
.ww-blog-meta-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
  font-size: 14.5px;
  color: #6a7885;
}

/* Grid de Artigos */
.ww-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
@media (max-width: 1024px) {
  .ww-blog-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
  }
}
@media (max-width: 640px) {
  .ww-blog-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

/* Cartão do Artigo */
.ww-article-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid #e5eaef;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.ww-article-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 28px rgba(38, 95, 143, 0.12);
  border-color: #c1d2e1;
}

/* Thumbnail 16:9 */
.ww-article-thumb {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #edf2f5;
  display: block;
}
.ww-article-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.ww-article-card:hover .ww-article-thumb img {
  transform: scale(1.04);
}

/* Conteúdo do Cartão */
.ww-article-body {
  padding: 22px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.ww-article-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  font-size: 12.5px;
}
.ww-article-cat {
  background: #edf4f9;
  color: #1e5a88;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 6px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 11.5px;
}
.ww-article-date {
  color: #8999a6;
}
.ww-article-title {
  margin: 0 0 10px;
  font-family: 'Nunito', 'Poppins', system-ui, sans-serif;
  font-size: 18.5px;
  line-height: 1.35;
  font-weight: 700;
}
.ww-article-title a {
  color: #1a232b !important;
  text-decoration: none;
  transition: color 0.2s ease;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ww-article-title a:hover {
  color: #265F8F !important;
}
.ww-article-excerpt {
  color: #55626e;
  font-size: 14.5px;
  line-height: 1.58;
  margin: 0 0 18px;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ww-article-foot {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #f0f3f6;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ww-article-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #265F8F !important;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: gap 0.2s ease;
}
.ww-article-card:hover .ww-article-link {
  gap: 10px;
  color: #13775a !important;
}

/* Mensagem de Vazio */
.ww-article-empty {
  grid-column: 1 / -1;
  text-align: center;
  padding: 60px 20px;
  background: #ffffff;
  border-radius: 14px;
  border: 1px dashed #d2dbe2;
  color: #5b6772;
}
.ww-article-empty h3 {
  margin: 0 0 8px;
  font-size: 20px;
  color: #1b4a70;
}

/* Banner de Emergência no final do Blog */
.ww-blog-emergency {
  margin-top: 60px;
  background: linear-gradient(135deg, #1b4a70 0%, #265F8F 100%);
  border-radius: 18px;
  padding: 36px 40px;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  box-shadow: 0 10px 30px rgba(27, 74, 112, 0.2);
}
.ww-blog-emergency h3 {
  margin: 0 0 8px;
  font-family: 'Nunito', sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #ffffff;
}
.ww-blog-emergency p {
  margin: 0;
  font-size: 16px;
  opacity: 0.92;
  line-height: 1.5;
  max-width: 580px;
}
.ww-blog-emergency-actions {
  display: flex;
  gap: 12px;
  flex-shrink: 0;
}
.ww-btn-emergency-zap {
  background: #128C7E !important;
  color: #ffffff !important;
  padding: 13px 24px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: background 0.2s ease;
}
.ww-btn-emergency-zap:hover {
  background: #0e7266 !important;
}
.ww-btn-emergency-tel {
  background: #ffffff !important;
  color: #1b4a70 !important;
  padding: 13px 22px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: background 0.2s ease;
}
.ww-btn-emergency-tel:hover {
  background: #edf4f9 !important;
}
@media (max-width: 860px) {
  .ww-blog-emergency {
    flex-direction: column;
    text-align: center;
    padding: 28px 20px;
  }
  .ww-blog-emergency-actions {
    flex-direction: column;
    width: 100%;
  }
  .ww-btn-emergency-zap,
  .ww-btn-emergency-tel {
    justify-content: center;
    width: 100%;
  }
}

/* bloco "Onde estamos" - pedido do cliente em 04/09/2026 */
.ww-onde-estamos{background:#f6f7f5;padding:48px 20px;font-family:inherit}
.ww-onde-wrap{max-width:1140px;margin:0 auto;display:flex;flex-wrap:wrap;gap:32px;align-items:stretch}
.ww-onde-texto{flex:1 1 320px;min-width:280px}
.ww-onde-estamos h2{font-size:28px;line-height:1.2;margin:0 0 16px;color:#1d3d2f}
.ww-onde-end{font-size:17px;line-height:1.6;margin:0 0 8px;color:#333}
.ww-onde-hora{font-size:16px;margin:0 0 20px;color:#333}
.ww-onde-contatos{list-style:none;margin:0;padding:0}
.ww-onde-contatos li{margin:0 0 12px;font-size:17px}
.ww-onde-contatos a{color:#1d3d2f;text-decoration:none;font-weight:600;border-bottom:1px solid rgba(29,61,47,.3)}
.ww-onde-contatos a:hover,.ww-onde-contatos a:focus{border-bottom-color:#1d3d2f}
.ww-onde-contatos span{color:#6b6b6b;font-weight:400;font-size:14px;margin-left:6px}
.ww-onde-mapa{flex:1 1 380px;min-width:280px;min-height:300px}
.ww-onde-mapa iframe{width:100%;height:100%;min-height:300px;border:0;display:block;border-radius:8px}
@media (max-width:767px){.ww-onde-estamos{padding:32px 16px}.ww-onde-wrap{gap:24px}.ww-onde-estamos h2{font-size:24px}}

/* video institucional da home - o widget do Elementor nao monta sem JS */
.ww-video-embed{position:relative;width:100%;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#000}
.ww-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* carrossel de logos parado: vira grade enquanto o Swiper nao inicializa */
.elementor-image-carousel-wrapper:not(.swiper-initialized) .elementor-image-carousel{
  display:flex;flex-wrap:wrap;gap:12px;justify-content:center;transform:none!important}
.elementor-image-carousel-wrapper:not(.swiper-initialized) .swiper-slide{
  width:112px;flex:0 0 112px;height:auto}
.elementor-image-carousel-wrapper:not(.swiper-initialized) .swiper-slide-inner{margin:0}
.elementor-image-carousel-wrapper:not(.swiper-initialized) .swiper-slide-image{
  width:100%;height:76px;object-fit:contain;background:#fff;padding:10px;border-radius:8px;display:block}
@media (max-width:767px){
  .elementor-image-carousel-wrapper:not(.swiper-initialized) .swiper-slide{width:92px;flex:0 0 92px}
  .elementor-image-carousel-wrapper:not(.swiper-initialized) .swiper-slide-image{height:64px;padding:8px}}

/* "Qualidade em Primeiro Lugar": paragrafo escuro sobre o fundo azul */
.elementor-element-4fce20dd .elementor-widget-container,
.elementor-element-4fce20dd .elementor-widget-container p{color:#fff!important}

/* bloco da Farmacia Veterinaria - mesmo desenho do "Sobre Nos", em fundo azul */
.ww-bloco-farmacia .ww-rotulo{color:#40BC9C;font-size:14px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;margin:0 0 10px}
.ww-bloco-farmacia .ww-titulo{color:#fff!important;font-size:42px;line-height:1.12;margin:0}
@media (max-width:1024px){.ww-bloco-farmacia .ww-titulo{font-size:34px}}

/* ---- celular: tudo menor e mais junto, sem tirar nenhuma secao ---- */
@media (max-width:767px){
  .elementor-widget-heading h1,.elementor-widget-heading .elementor-heading-title{line-height:1.2!important}
  .elementor-widget-heading h1{font-size:28px!important}
  .elementor-widget-heading h2{font-size:23px!important}
  .elementor-widget-heading h3{font-size:19px!important}
  .elementor-widget-heading h4{font-size:17px!important}
  .elementor-widget-heading h5,.elementor-widget-heading h6{font-size:13px!important;letter-spacing:.08em!important}
  .ww-bloco-farmacia .ww-titulo{font-size:24px!important}
  .ww-bloco-farmacia .ww-rotulo{font-size:12px!important;margin-bottom:6px!important}

  .elementor-widget-text-editor,.elementor-widget-text-editor p,
  .elementor-widget-icon-box .elementor-icon-box-description,
  .elementor-widget-icon-list .elementor-icon-list-text{font-size:15px!important;line-height:1.5!important}
  .elementor-widget-text-editor p{margin:0 0 9px!important}
  .elementor-widget-text-editor p:last-child{margin-bottom:0!important}

  .elementor-section.elementor-top-section{padding-top:26px!important;padding-bottom:26px!important}
  .elementor-section.elementor-inner-section{padding-top:0!important;padding-bottom:0!important}
  .elementor-widget:not(:last-child){margin-bottom:13px!important}
  .elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:8px!important}

  .elementor-button{font-size:14px!important;padding:11px 20px!important}
  .ww-onde-estamos{padding:26px 16px!important}
  .ww-onde-estamos h2{font-size:21px!important}
  .ww-onde-contatos li{font-size:15px!important;margin-bottom:9px!important}
  .ww-onde-mapa,.ww-onde-mapa iframe{min-height:210px!important}
  .ww-video-embed{border-radius:8px}
}

/* ---------- rodape proprio (10/09/2026) ----------
   O do ElementsKit tinha 34 KB de markup por pagina, colunas desalinhadas e um
   vao onde ficava a unidade do Centro. */
.ww-rodape{background:#1c4260;color:#e8eef3;padding:52px 20px 0;font-size:15px;line-height:1.6}
.ww-rodape-wrap{max-width:1140px;margin:0 auto;display:grid;
  grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:36px;align-items:start}
.ww-rodape-col h3{color:#fff;font-size:15px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;margin:0 0 16px;padding-bottom:10px;
  border-bottom:2px solid rgba(64,188,156,.5)}
.ww-rodape-marca img{max-width:200px;height:auto;display:block;margin:0 0 16px;background:none}
.ww-rodape-marca p{margin:0 0 18px;color:#c3d3df;max-width:280px}
.ww-rodape-lista,.ww-rodape-redes{list-style:none;margin:0;padding:0}
.ww-rodape-lista li{margin:0 0 10px;color:#c3d3df}
.ww-rodape-lista a,.ww-rodape-redes a{color:#e8eef3;text-decoration:none}
.ww-rodape-lista a:hover,.ww-rodape-lista a:focus,
.ww-rodape-redes a:hover,.ww-rodape-redes a:focus{color:#40BC9C;text-decoration:underline}
.ww-rodape-redes{display:flex;gap:10px;flex-wrap:wrap}
.ww-rodape-redes a{display:inline-block;padding:7px 14px;border:1px solid rgba(232,238,243,.35);
  border-radius:999px;font-size:13px}
.ww-rodape-redes a:hover{border-color:#40BC9C;text-decoration:none}
.ww-rodape-base{max-width:1140px;margin:40px auto 0;padding:18px 0 22px;
  border-top:1px solid rgba(232,238,243,.18)}
.ww-rodape-base p{margin:0;font-size:13px;color:#a9bfcf;text-align:center}
@media (max-width:900px){
  .ww-rodape-wrap{grid-template-columns:1fr 1fr;gap:28px}
}
@media (max-width:767px){
  .ww-rodape{padding:32px 18px 0;font-size:14px}
  .ww-rodape-wrap{grid-template-columns:1fr;gap:22px}
  .ww-rodape-col h3{font-size:13px;margin-bottom:11px;padding-bottom:7px}
  .ww-rodape-marca img{max-width:160px;margin-bottom:12px}
  .ww-rodape-marca p{margin-bottom:13px}
  .ww-rodape-lista li{margin-bottom:7px}
  .ww-rodape-base{margin-top:24px;padding:14px 0 18px}
}

/* a quebra do titulo da Farmacia: no celular o titulo ja e menor e flui sozinho */
@media (max-width:767px){.ww-quebra{display:none}}

/* ---------- menu do celular, sem JS (11/09/2026) ----------
   O hamburger do ElementsKit era um <button> que so o JS do plugin abria.
   Virou checkbox + label: abre e fecha sem uma linha de script. */
.ww-menu-toggle{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.ww-hamburger{display:none}
@media (max-width:1024px){
  .ww-hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;
    width:46px;height:46px;padding:11px;border-radius:10px;cursor:pointer;
    background:#265F8F;box-sizing:border-box}
  .ww-hamburger span{display:block;height:2.5px;width:100%;background:#fff;border-radius:2px;
    transition:transform .2s ease,opacity .2s ease}
  .ww-menu-toggle:checked ~ .ww-hamburger span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  .ww-menu-toggle:checked ~ .ww-hamburger span:nth-child(2){opacity:0}
  .ww-menu-toggle:checked ~ .ww-hamburger span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
  .ww-hamburger:focus-visible{outline:3px solid #40BC9C;outline-offset:2px}

  .ekit_menu_responsive_tablet .elementskit-menu-container{
    display:none!important;position:absolute;left:0;right:0;top:100%;z-index:9999;
    background:#fff;box-shadow:0 12px 28px rgba(0,0,0,.16);border-radius:0 0 12px 12px;
    max-height:78vh;overflow-y:auto;padding:8px 0}
  .ww-menu-toggle:checked ~ .elementskit-menu-container{display:block!important}
  .ekit_menu_responsive_tablet .elementskit-navbar-nav{display:block!important;width:100%}
  .ekit_menu_responsive_tablet .elementskit-navbar-nav>li{width:100%;border-bottom:1px solid #eef1f4}
  .ekit_menu_responsive_tablet .elementskit-navbar-nav>li:last-child{border-bottom:0}
  .ekit_menu_responsive_tablet .elementskit-navbar-nav a{
    display:block;padding:14px 20px;font-size:16px;color:#1c4260!important}
  .ekit_menu_responsive_tablet .elementskit-submenu-panel{
    position:static!important;display:block!important;box-shadow:none;padding-left:14px;background:#f7f9fb}
}

/* o botao flutuante do plugin nao volta nem por CSS residual */
.qlwapp,.wa__btn_popup,.wa__stt{display:none!important}
/* restos do menu offcanvas do plugin: o X e a cortina so faziam sentido com o
   JS dele. O proprio hamburger vira X quando o menu esta aberto. */
.elementskit-menu-close,.elementskit-menu-overlay{display:none!important}

/* ---------- acertos de 11/09/2026 ----------
   1. O rotulo do contador e branco e o fundo da secao e branco: so o numero
      aparecia, em qualquer tela. Passa a ser o azul da marca. */
.elementor-widget-counter .elementor-counter-title,
.elementor-874 .elementor-element .elementor-counter-title{
  color:#1c4260!important;font-weight:600!important}

/* 2. Cabecalho do celular: era logo, vao, icones e hamburger empilhados, com
      muito ar no topo. Vira uma linha so — logo a esquerda, botao a direita. */
@media (max-width:1024px){
  .ekit-template-content-header .elementor-section.elementor-top-section{
    padding:10px 14px!important}
  .ekit-template-content-header .elementor-container{
    display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
    align-items:center!important;justify-content:space-between!important;gap:12px}
  .ekit-template-content-header .elementor-column{
    width:auto!important;flex:0 0 auto!important}
  .ekit-template-content-header .elementor-widget-wrap{padding:0!important}
  .ekit-template-content-header .elementor-widget:not(:last-child){margin-bottom:0!important}
  /* a logo estava minuscula */
  .ekit-template-content-header .elementor-widget-image img{
    width:185px!important;max-width:54vw!important;height:auto!important;display:block}
  /* e o botao alinhado com ela */
  .ww-hamburger{width:44px;height:44px;padding:12px 10px;gap:4px;flex-shrink:0}
}
@media (max-width:767px){
  .ekit-template-content-header .elementor-widget-image img{width:160px!important}
  .ww-hamburger{width:42px;height:42px;padding:11px 9px}
}

/* 3. Os logos da farmacia em duas linhas cheias, sem sobra */
.elementor-image-carousel-wrapper:not(.swiper-initialized) .elementor-image-carousel{
  max-width:760px;margin:0 auto}
