/* Correções de CSS do site da Regulus. O resto é o CSS original do Elementor, sem mudança.
   Padrão do site: Lato, azul-marinho #001737, dourado #D3AC43, texto #333. */

/* ---------- Blog: lista de posts (modelo de cartão 1899) ----------
   Os títulos saíam em Raleway, de um layout antigo; o resto do site é Lato. */
.elementor-1899 .elementor-heading-title,
.elementor-1899 .elementor-heading-title a {
  font-family: "Lato", sans-serif !important;
  font-weight: 900 !important;
  font-size: 20px !important;
  line-height: 1.3 !important;
  color: #001737 !important;
}
.elementor-1899 .elementor-heading-title a:hover { color: #d3ac43 !important; }
.elementor-1899 .elementor-post-info,
.elementor-1899 .elementor-icon-list-text { font-family: "Lato", sans-serif !important; }

/* ---------- Blog: filtro de categorias ----------
   No celular os botões ficavam em escada, cada linha com uma largura. Viram pílulas iguais. */
.e-filter {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 8px !important;
}
.e-filter .e-filter-item {
  font-family: "Lato", sans-serif !important;
  font-size: 15px !important;
  line-height: 1 !important;
  padding: 10px 16px !important;
  border: 1px solid #d9dde3 !important;
  border-radius: 999px !important;
  color: #001737 !important;
  background: #fff !important;
  margin: 0 !important;
}
.e-filter .e-filter-item[aria-pressed="true"],
.e-filter .e-filter-item:hover {
  background: #001737 !important;
  border-color: #001737 !important;
  color: #fff !important;
}
/* "All" fica no começo da fila, como em qualquer filtro */
.e-filter .e-filter-item[data-filter="__all"] { order: -1; }

/* ---------- Barra lateral do blog (modelo 1891: Blog, categorias e posts) ---------- */
.elementor-1891 h3.elementor-heading-title {
  font-family: "Lato", sans-serif !important;
  font-weight: 900 !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  color: #001737 !important;
  text-transform: capitalize !important; /* o título "categories" estava em minúsculas */
}
/* busca: o campo ficava espremido ao lado do botão dentro dos posts */
.elementor-1891 .elementor-search-form__container { min-height: 48px !important; }
.elementor-1891 .elementor-search-form__input {
  font-family: "Lato", sans-serif !important;
  font-size: 16px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.elementor-1891 .elementor-search-form__submit { flex: 0 0 48px !important; min-width: 48px !important; }
/* categorias */
.elementor-1891 .jkit-categorylist .category-list-item a {
  font-family: "Lato", sans-serif !important;
  font-size: 16px !important;
  color: #333 !important;
  text-decoration: none !important;
}
.elementor-1891 .jkit-categorylist .category-list-item a:hover { color: #d3ac43 !important; }
.elementor-1891 .jkit-categorylist .icon-list i,
.elementor-1891 .jkit-categorylist .icon-list svg { color: #d3ac43 !important; fill: #d3ac43 !important; }
/* arquivo por mês: mesma fonte e espaçamento das categorias (o h5 vazio do widget fica: ele dá o respiro) */
.elementor-1891 .elementor-widget-wp-widget-archives ul { margin: 0 !important; padding-left: 18px !important; }
.elementor-1891 .elementor-widget-wp-widget-archives li {
  font-family: "Lato", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  color: #333 !important;
}
.elementor-1891 .elementor-widget-wp-widget-archives a { color: #001737 !important; text-decoration: none !important; }
.elementor-1891 .elementor-widget-wp-widget-archives a:hover { color: #d3ac43 !important; }
/* posts recentes: no celular aparecia o texto do cabeçalho antigo (telefone, e-mail, redes) como resumo */
.elementor-1891 .elementor-post__excerpt { display: none !important; }
.elementor-1891 .elementor-post__title,
.elementor-1891 .elementor-post__title a {
  font-family: "Lato", sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: #001737 !important;
}
.elementor-1891 .elementor-post__title a:hover { color: #d3ac43 !important; }
.elementor-1891 .elementor-post__meta-data,
.elementor-1891 .elementor-post-date {
  font-family: "Lato", sans-serif !important;
  font-size: 13px !important;
  color: #69727d !important;
}

/* ---------- Crédito da Escobar Digital no rodapé ----------
   O nome nunca quebra no meio: "Developed by Escobar Digital" desce inteiro para a linha de baixo. */
.rge-credit { white-space: nowrap; }

/* ---------- Imagem com link dentro do conteúdo (posts do blog) ----------
   O <a> em volta da foto é inline-block sem largura; a foto (1600px) esticava o link e a página
   inteira rolava de lado no celular (1634px numa tela de 390). O link passa a ter no máximo a coluna. */
.elementor-widget-image a { max-width: 100%; }

/* ---------- Diagramas em texto nos posts (blocos <code>/<pre>) ----------
   Em 8 posts o desenho em ASCII era mais largo que a tela e a página rolava de lado no celular.
   O bloco rola dentro da própria caixa, sem quebrar o desenho; fórmulas soltas quebram a linha. */
[data-elementor-type="wp-post"] pre,
[data-elementor-type="wp-post"] code.code-container {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
[data-elementor-type="wp-post"] .math-inline { overflow-wrap: anywhere; }

/* Tabelas largas dos posts: rolam dentro da própria caixa no celular, sem esticar a página
   (só no celular; no computador ficam como estão). */
@media (max-width: 767px) {
  [data-elementor-type="wp-post"] .elementor-widget-text-editor table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* ---------- Formulário do HighLevel no cartão "Schedule Your Free Consultation Today!" ----------
   O form_embed.js do GHL esconde o iframe (opacity 0, left -9999px) até o formulário avisar que carregou;
   vindo do cache, o aviso chega antes e o formulário some. Fica sempre visível, com altura que cabe inteiro. */
.rge-ghl-form iframe[data-form-id] {
  position: relative !important;
  left: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  display: block !important;
  width: 100% !important;
  min-height: 647px; /* o formulário mede 642px em uma coluna, no computador e no celular */
}
.rge-ghl { width: 100%; margin-top: 16px; }

/* ---------- LPs de anúncio (/lp/...) ----------
   Chamada final com o formulário ao lado (regra: LP tem formulário também no fim). */
.rge-final__in--form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 450px);
  gap: 48px;
  align-items: center;
}
.rge-final__in--form .rge-final__box { max-width: none !important; margin: 0 !important; }
.rge-lpform {
  background: #fff;
  border-radius: 10px;
  padding: 20px 20px 8px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
}
.rge-lpform h3 {
  font-family: "Lato", sans-serif;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.1;
  color: #030303;
  margin: 0 0 16px;
}
.rge-check--light li { color: #fff !important; }
@media (max-width: 1024px) {
  .rge-final__in--form { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .rge-lpform h3 { font-size: 22px; }
}
/* LP sem avaliação do serviço: só o resumo do Google, centralizado */
.rge-rev--solo { display: flex !important; justify-content: center; }
.rge-rev--solo .rge-rev__sum { margin: 0 auto; }
/* Lugar não quebra no meio na etiqueta do topo das LPs ("Milford & MetroWest MA" desce inteiro).
   Só ali: no título da área o texto quebra livre, como no original (05/11/2026). */
.rge-place { white-space: nowrap; }
