/* =====================================================================
   custom.css — camada de atualização (NÃO altera os arquivos originais)
   1. Tipografia moderna (Inter + Poppins)
   2. Responsividade para desktop / tablet / mobile
   Mantém o layout do site idêntico; apenas preenche lacunas de responsivo.
   ===================================================================== */

/* ---------- 1. TIPOGRAFIA MODERNA ---------- */
body {
  font-family: "Inter", "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6,
.dropbtn,
.menu-desk > a,
header a,
.tab button,
p.btn-azul a,
.produto .orcamento a,
.produto .ficha a {
  font-family: "Poppins", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

input, textarea, select, button {
  font-family: inherit;
}

/* ---------- 2. BASE RESPONSIVA / SEGURANÇA ---------- */
html {
  -webkit-text-size-adjust: 100%;
}

html, body {
  overflow-x: hidden;      /* evita rolagem horizontal em telas pequenas */
  max-width: 100%;
}

img {
  max-width: 100%;
  height: auto;
}

.banner-home img,
.produtos-destaque .items img,
header .dropdown-content img {
  max-width: 100%;
  height: auto;
}

/* imagens de produto em destaque centralizadas quando a coluna empilha */
@media (max-width: 991px) {
  .produtos-destaque .items .col-md-3 {
    text-align: center;
    margin-bottom: 30px;
  }
  .produtos-destaque .items .col-md-3 img {
    display: inline-block;
    max-width: 280px;
  }
  .produtos-destaque .items h3,
  .produtos-destaque .items p {
    text-align: center;
  }
}

/* ---------- 2a. TABLET (769px – 991px): aplica o mesmo tratamento do mobile
   às seções da home que dependem de offsets de coluna do desktop ---------- */
@media (min-width: 769px) and (max-width: 991px) {

  .produtos-destaque h2,
  .produtos-destaque .col-md-2 {
    text-align: center;
  }
  p.btn-azul { text-align: center; }

  /* "Seja um revendedor" — vira bloco sólido, largura total */
  .revendedor {
    background: #f1f1f1;
    height: auto;
    padding: 40px 0 50px;
  }
  .revendedor .col-md-6.col-md-offset-5 {
    width: 100%;
    margin-left: 0;
  }
  .revendedor h2 { padding-top: 0; margin-bottom: 25px; }

  /* "Sobre nós" — fundo azul sólido em vez da imagem posicionada */
  .sobre-nos.home {
    background: #1392d5;
    height: auto;
    margin: 40px 0;
  }
  .sobre-nos.home .col-md-6.col-md-offset-6 {
    width: 100%;
    margin-left: 0;
  }

  /* "Simulador de Cores" — reduz o padding-top gigante do desktop */
  .simulador-home {
    height: auto;
    padding: 60px 0;
    background-size: cover;
    background-position: center;
  }
  .simulador-home .col-md-5.col-md-offset-5 {
    width: 100%;
    margin-left: 0;
    text-align: center;
  }
  .simulador-home h2 { padding-top: 0; font-size: 38px; }

  /* rodapé: colunas md-2 não cabem em 6 — deixa fluir em 2 por linha */
  footer .container > .row:first-child > [class*="col-md-"] {
    width: 50%;
    margin-bottom: 30px;
  }
}

/* ---------- 2b. MOBILE (≤ 768px): reforços ---------- */
@media (max-width: 768px) {

  .simulador-home {
    height: auto;
    padding: 45px 0;
    background-size: cover;
    background-position: center;
    text-align: center;
  }
  .simulador-home h2 {
    padding-top: 0;
    font-size: 30px;
  }
  .simulador-home .col-md-5.col-md-offset-5 {
    width: 100%;
    margin-left: 0;
  }

  .sobre-nos.home {
    height: auto;
    padding: 10px 0 30px;
  }
  .sobre-nos.home .info { padding: 25px; }

  .revendedor .col-md-6.col-md-offset-5 {
    width: 100%;
    margin-left: 0;
  }
  .revendedor h2 { padding-top: 30px; }

  .produtos-destaque { padding-top: 30px; }
  .produtos-destaque .col-md-2.col-md-offset-7 {
    margin-left: 0;
    width: 100%;
  }

  /* menu responsivo: garante o dropdown de produtos abrindo bem */
  .menu li ul { padding-left: 15px !important; }

  /* banner: sem margens negativas que estouram a largura */
  .banner-home .owl-prev,
  .banner-home .owl-next { display: none !important; }

  header .searchform { text-align: center; }

  footer { text-align: center; }
  footer .newsletter form { max-width: 320px; margin: 0 auto; }
}

/* ---------- 2c. WhatsApp flutuante: não cobrir conteúdo em telas pequenas ---------- */
@media (max-width: 480px) {
  .wa-flutuante { bottom: 14px; right: 14px; }
  .wa-flutuante img { width: 52px; height: 52px; }
}

/* ---------- 2d. Telas grandes (desktop wide): centraliza o container ---------- */
@media (min-width: 1400px) {
  .banner-home .item img { width: 100%; }
}

/* =====================================================================
   3. PÁGINA "SOBRE NÓS" — player do YouTube em formato padrão (16:9)
   O embed do WordPress vinha com width:100% e altura fixa (281px),
   ficando achatado. Aqui vira um player responsivo 16:9 centralizado.
   ===================================================================== */
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper,
.wp-block-embed-youtube .wp-block-embed__wrapper,
.sobre-nos figure.wp-block-embed .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  max-width: 720px;
  margin: 32px auto;
  aspect-ratio: 16 / 9;
  background: #000;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 34px rgba(0, 0, 0, 0.18);
}
/* fallback p/ navegadores sem aspect-ratio */
@supports not (aspect-ratio: 16 / 9) {
  .wp-block-embed.is-provider-youtube .wp-block-embed__wrapper,
  .wp-block-embed-youtube .wp-block-embed__wrapper {
    height: 0;
    padding-bottom: 56.25%;
  }
}
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper iframe,
.wp-block-embed-youtube .wp-block-embed__wrapper iframe,
.sobre-nos figure.wp-block-embed .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

/* =====================================================================
   4. LEGIBILIDADE — descrições de produto e texto geral do site
   - cor dos textos de descrição: cinza -> preto
   - fonte um pouco maior, peso normal, mais espaçamento entre linhas
   ===================================================================== */
body {
  line-height: 1.6;
}

/* -- Descrição na PÁGINA DO PRODUTO (e blocos PREPARO / APLICAÇÃO) -- */
.produto p,
.produto li,
.produto .wp-block-column p,
.produto .advgb-accordion-body p,
.produto .advgb-accordion-body li {
  color: #111 !important;
  font-size: 17px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.75;
}
.produto .cores h3,
.produto h3 {
  color: #1a1a1a;
}

/* -- Descrição nos CARDS (listagem de produtos / categoria) -- */
.produtos .items p,
.produtos .items .text2 p {
  color: #111 !important;
  font-size: 15px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.6;
}
.produtos .items h3 {
  font-size: 14px;
  font-weight: 600;
}
.produtos .items h2 {
  color: #1a1a1a;
}

/* -- Descrição nos PRODUTOS EM DESTAQUE (home) -- */
.produtos-destaque .items p {
  color: #111;
  font-size: 17px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.6;
}

/* -- Oculta a tag de categoria (Argamassas / Outros / ...) nos cards da home -- */
.produtos-destaque .items h3 {
  display: none;
}

/* -- "Mais informações" / fichas técnicas -- */
.mais-infos p,
.mais-infos h3,
.mais-infos li,
.tabcontent p,
.tabcontent li {
  color: #1a1a1a;
  font-size: 17px;
  line-height: 1.7;
}

/* -- Escurece os cinzas mais claros usados como texto pelo site -- */
.sobre-nos p,
.sobre-nos.home .info p {
  color: #2b2b2b;
  font-size: 16px;
  line-height: 1.7;
}
.infos h3,
.infos p,
.escolha h3,
.ambiente p,
.ambiente .opcoes li a {
  color: #2b2b2b;
}
.breadcrumb li:last-of-type {
  color: #444;
}
.wp-pagenavi span,
.wp-pagenavi a {
  color: #333 !important;
}

/* Seção 5 (galeria de aplicação + vídeo por produto) — ADIADA.
   Dados prontos em _data/product-media.json e assets/product-media/ para retomar. */

/* =====================================================================
   6. BLOG — índice (/blog/) e artigos (/blog/<slug>/)
   Páginas geradas por transform.ps1 a partir de _data/blog-posts.json
   ===================================================================== */

/* ---- artigo ---- */
.blog-post article {
  max-width: 760px;
  margin: 10px auto 0;
}
.blog-post .post-cat {
  font-family: "Poppins", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #169ee5;
  margin-bottom: 10px;
}
.blog-post h1 {
  font-size: clamp(26px, 4.6vw, 38px);
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.2;
  margin: 0 0 14px;
  padding: 0;
}
.blog-post .post-meta {
  font-size: 13px;
  color: #7a7a7a;
  font-style: normal;
  margin: 0 0 26px;
  padding-bottom: 22px;
  border-bottom: 1px solid #e3e3e3;
}
.blog-post .post-resumo {
  font-size: 18px;
  line-height: 1.65;
  color: #2b2b2b;
  border-left: 3px solid #169ee5;
  padding: 4px 0 4px 18px;
  margin: 0 0 30px;
}
.blog-post article > p,
.blog-post article > ul,
.blog-post article > ol {
  font-size: 17px;
  line-height: 1.78;
  color: #111;
  margin: 0 0 18px;
}
.blog-post article > h2 {
  font-family: "Poppins", sans-serif;
  font-size: 23px;
  font-weight: 600;
  color: #034694;
  line-height: 1.25;
  margin: 38px 0 14px;
  padding: 0;
}
.blog-post article > h2::after {
  content: "";
  display: block;
  width: 40px;
  height: 3px;
  background: #169ee5;
  margin-top: 10px;
}
.blog-post article a {
  color: #1373b0;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.blog-post article strong { color: #000; font-weight: 700; }
.blog-post article em { font-style: italic; }

/* ---- FAQ ---- */
.blog-post .post-faq {
  margin: 44px 0 0;
  padding-top: 8px;
}
.blog-post .post-faq > h2 {
  font-family: "Poppins", sans-serif;
  font-size: 23px;
  font-weight: 600;
  color: #034694;
  margin: 0 0 8px;
}
.blog-post .faq-item {
  border-bottom: 1px solid #e3e3e3;
  padding: 18px 0;
}
.blog-post .faq-item h3 {
  font-family: "Poppins", sans-serif;
  font-size: 17px;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 6px;
}
.blog-post .faq-item p {
  font-size: 16px;
  line-height: 1.7;
  color: #333;
  margin: 0;
}

/* ---- CTA de produto ---- */
.blog-post .post-cta {
  margin: 40px 0 0;
  padding: 26px 26px 22px;
  background: #f1f7fb;
  border: 1px solid #d5e6f1;
  border-radius: 12px;
}
.blog-post .post-cta h2 {
  font-family: "Poppins", sans-serif;
  font-size: 19px;
  font-weight: 600;
  color: #034694;
  margin: 0 0 14px;
}
.blog-post .post-cta ul {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.blog-post .post-cta ul li a {
  display: inline-block;
  background: #034694;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  padding: 10px 16px;
  border-radius: 8px;
  transition: background 0.2s;
}
.blog-post .post-cta ul li a:hover { background: #1373b0; }
.blog-post .post-cta-actions {
  font-size: 14px;
  color: #555;
  margin: 0;
}
.blog-post .post-cta-actions a { color: #1373b0; }

/* ---- leia também ---- */
.blog-post .post-related {
  margin: 38px 0 10px;
  border-top: 1px solid #e3e3e3;
  padding-top: 22px;
}
.blog-post .post-related h2 {
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 12px;
}
.blog-post .post-related ul { margin: 0; padding-left: 18px; }
.blog-post .post-related li { margin: 8px 0; }
.blog-post .post-related a { color: #1373b0; }

/* ---- índice do blog ---- */
.blog-list { padding-bottom: 40px; }
.blog-list .post-cat {
  font-family: "Poppins", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #169ee5;
  margin-bottom: 10px;
}
.blog-list h1 {
  font-size: clamp(26px, 4.4vw, 36px);
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.2;
  margin: 0 0 14px;
  padding: 0;
}
.blog-list .blog-intro {
  font-size: 17px;
  line-height: 1.7;
  color: #2b2b2b;
  max-width: 680px;
  margin: 0 0 34px;
}
.blog-list .blog-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 18px;
}
.blog-list .blog-card {
  display: block;
  text-decoration: none;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: 12px;
  padding: 22px 22px 20px;
  transition: box-shadow 0.2s, transform 0.2s, border-color 0.2s;
}
.blog-list .blog-card:hover {
  box-shadow: 0 12px 30px rgba(3, 70, 148, 0.12);
  transform: translateY(-3px);
  border-color: #cfe3f0;
}
.blog-list .blog-card-cat {
  display: inline-block;
  font-family: "Poppins", sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #169ee5;
  margin-bottom: 10px;
}
.blog-list .blog-card h2 {
  font-family: "Poppins", sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1.3;
  margin: 0 0 10px;
}
.blog-list .blog-card p {
  font-size: 14px;
  line-height: 1.6;
  color: #444;
  margin: 0 0 14px;
}
.blog-list .blog-card-date {
  font-size: 12px;
  color: #8a8a8a;
}

@media (max-width: 768px) {
  .blog-post article { max-width: 100%; }
  .blog-post .post-cta { padding: 20px 18px; }
  .blog-list .blog-cards { grid-template-columns: 1fr; }
}

/* =====================================================================
   7. HOME: "Escolha pelo uso" (H1 + atalhos) e blog em cards de texto
   ===================================================================== */
.escolha-uso {
  background: #f6f9fc;
  padding: 56px 0 48px;
}
.escolha-uso h1 {
  font-size: 34px;
  line-height: 1.2;
  font-weight: 600;
  color: #1a1a1a;
  max-width: 820px;
  margin: 0 0 12px;
}
.escolha-uso h1 b { color: #1392d5; font-weight: 700; }
.escolha-uso-sub {
  font-size: 17px;
  line-height: 1.5;
  color: #444;
  max-width: 640px;
  margin: 0 0 32px;
}
.escolha-uso-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.escolha-uso-grid a {
  display: block;
  height: 100%;
  padding: 18px 20px;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: 12px;
  text-decoration: none;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.escolha-uso-grid a:hover,
.escolha-uso-grid a:focus-visible {
  border-color: #1392d5;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
}
.escolha-uso-grid strong {
  display: block;
  font-family: "Poppins", "Inter", sans-serif;
  font-size: 15px;
  line-height: 1.35;
  font-weight: 600;
  color: #034694;
  margin-bottom: 6px;
}
.escolha-uso-grid span {
  display: block;
  font-size: 14px;
  line-height: 1.45;
  color: #444;
}
@media (max-width: 991px) {
  .escolha-uso-grid { grid-template-columns: repeat(2, 1fr); }
  .escolha-uso h1 { font-size: 28px; }
}
@media (max-width: 560px) {
  .escolha-uso { padding: 36px 0 32px; }
  .escolha-uso h1 { font-size: 24px; }
  .escolha-uso-grid { grid-template-columns: 1fr; }
}

.blog { padding: 40px 0 20px; }
.blog .blog-card {
  display: block;
  height: 100%;
  min-height: 170px;
  padding: 22px 22px 20px;
  margin-bottom: 24px;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: 12px;
  transition: border-color .15s ease;
}
.blog a:hover .blog-card,
.blog a:focus-visible .blog-card { border-color: #1392d5; }
.blog .blog-card-cat {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #034694;
  margin: 0 0 10px;
}
.blog .blog-card h3 {
  font-family: "Poppins", "Inter", sans-serif;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 14px;
}
.blog .blog-card-more {
  font-size: 14px;
  font-weight: 600;
  color: #034694;
}


/* =====================================================================
   8. WhatsApp no lugar de newsletter e formularios + contraste do azul
   ===================================================================== */
.wa-btn {
  display: inline-block;
  background: #128c4a;
  color: #fff !important;
  font-family: "Poppins", "Inter", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.2;
  padding: 12px 22px;
  border-radius: 24px;
  text-decoration: none;
  transition: background .15s ease;
}
.wa-btn:hover, .wa-btn:focus-visible { background: #0e7a3f; color: #fff !important; }
.wa-btn-lg { font-size: 16px; padding: 15px 30px; margin-top: 8px; }
.rev-txt { font-size: 17px; line-height: 1.5; margin: 6px 0 14px; color: #333; }
.newsletter p { margin-bottom: 14px; }
.formulario { padding: 50px 0; }
.formulario .rev-txt { color: #333; }

/* azul de texto pequeno: contraste >= 4.5:1 sobre branco */
p.btn-azul a { color: #0d6aa3; border-color: #0d6aa3; }
p.btn-azul a:hover { background: #0d6aa3; color: #fff; }
.sobre-nos.home { background-color: #0d6aa3; }
@media (min-width: 769px) and (max-width: 991px) { .sobre-nos.home { background: #0d6aa3; } }

.formulario h2, .formulario .rev-txt { color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,.45); }
.formulario .rev-txt { font-weight: 500; }

/* =====================================================================
   9. AEO/GEO: perguntas frequentes na home, fatos em /sobre-nos/, hub de respostas
   ===================================================================== */
.home-faq { background: #f6f9fc; padding: 48px 0 40px; }
.home-faq h2 { font-family: "Poppins", "Inter", sans-serif; font-size: 28px; font-weight: 600; margin: 0 0 24px; color: #1a1a1a; }
.home-faq h2 b { color: #0d6aa3; }
.home-faq .faq-item { background: #fff; border: 1px solid #e3e3e3; border-radius: 12px; padding: 16px 20px; margin-bottom: 12px; }
.home-faq .faq-item h3 { font-family: "Poppins", "Inter", sans-serif; font-size: 17px; line-height: 1.35; font-weight: 600; margin: 0 0 6px; color: #034694; }
.home-faq .faq-item p { margin: 0; font-size: 15px; line-height: 1.55; color: #333; }
.home-faq .faq-item a { color: #0d6aa3; font-weight: 600; }
.home-faq .btn-azul { margin-top: 24px; }
.fatos { padding: 44px 0 20px; }
.fatos h2 { font-family: "Poppins", "Inter", sans-serif; font-size: 28px; font-weight: 600; margin: 0 0 20px; }
.fatos h2 b { color: #0d6aa3; }
.fatos dl { display: grid; grid-template-columns: 180px 1fr; gap: 10px 24px; margin: 0; }
.fatos dt { font-weight: 700; color: #034694; }
.fatos dd { margin: 0; color: #333; line-height: 1.55; }
@media (max-width: 640px) { .fatos dl { grid-template-columns: 1fr; gap: 2px; } .fatos dd { margin-bottom: 12px; } }

/* ===== 10. Banner do simulador ===== */
.sim-banner { position: relative; background: #10202e; overflow: hidden; }
.sim-panels { display: flex; height: var(--bh, 440px); }
.sim-panel { flex: 1 1 0; position: relative; overflow: hidden; background: #f3f3f3; border-left: 3px solid #fff; }
.sim-panel:first-child { border-left: 0; }
.bn-foto { position: absolute; left: 50%; top: 0; width: 438px; height: 600px; margin-left: -219px; overflow: hidden; isolation: isolate;
  transform-origin: 50% 0; transform: scale(var(--s, 1)) translateY(var(--ty, 0px)); transition: background-color 1.4s ease; }
.bn-foto img { display: block; width: 438px; height: 600px; max-width: none; }
.bn-foto div { transition: background-color 1.4s ease, border-bottom-color 1.4s ease; }
.bn-banheiro .parede1 {
  position: absolute;
  width: 150px;
  height: 365px;
  transform: skew(-1deg);
  top: -3px;
  right: -25px;
  z-index: -1;
}
.bn-banheiro .parede2 {
  position: absolute;
  width: 478px;
  height: 325px;
  transform: rotate(73deg) skew(0deg, 6deg);
  top: 87px;
  left: -250px;
  z-index: -1;
}
.bn-banheiro .parede3 {
  position: absolute;
  border-bottom: 410px solid transparent;
  border-left: 15px solid transparent;
  border-right: 87px solid transparent;
  height: 0;
  width: 220px;
  top: 0px;
  right: 118px;
  transform: rotate(180deg);
  z-index: -1;
}
.bn-banheiro .parede4 {
  position: absolute;
  width: 300px;
  height: 250px;
  transform: skew(-31deg);
  bottom: -12px;
  right: -65px;
  z-index: -1;
}
.bn-banheiro .parede5 {
  position: absolute;
  width: 23px;
  height: 210px;
  transform: skew(13deg);
  top: 48px;
  left: 74px;
  z-index: -1;
}
.bn-banheiro .parede6 {
  position: absolute;
  width: 103px;
  height: 70px;
  transform: skew(14deg);
  top: 218px;
  left: 2px;
  z-index: -1;
}
.sim-chip { position: absolute; left: 10px; top: 10px; z-index: 3; display: flex; align-items: center; gap: 7px; background: rgba(255,255,255,.94);
  color: #1a1a1a; font: 600 12px/1 "Poppins", "Inter", sans-serif; padding: 6px 12px 6px 7px; border-radius: 999px; box-shadow: 0 1px 4px rgba(0,0,0,.2); }
.sim-chip i { width: 15px; height: 15px; border-radius: 50%; border: 1px solid rgba(0,0,0,.25); display: block; transition: background-color 1.4s ease; }
.sim-banner-text { position: absolute; left: 0; right: 0; bottom: 0; z-index: 4; padding: 70px 15px 28px; text-align: center;
  background: linear-gradient(to top, rgba(8,20,32,.9), rgba(8,20,32,.55) 55%, rgba(8,20,32,0)); }
.sim-banner-text h1 { margin: 0; color: #fff; font: 700 40px/1.15 "Poppins", "Inter", sans-serif; }
.sim-banner-text h1 b { color: #7cc8f2; }
.sim-banner-text h2 { margin: 8px 0 0; color: #eef3f8; font: 500 17px/1.4 "Inter", sans-serif; }
.sim-banner-text .sim-actions { margin-top: 16px; display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.sim-cta { display: inline-block; background: #fff; color: #034694; font: 600 14px/1 "Poppins", "Inter", sans-serif; padding: 12px 24px; border-radius: 24px; text-decoration: none; }
.sim-cta.alt { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.7); }
.sim-cta:hover, .sim-cta:focus-visible { background: #e6f2fb; color: #034694; }
.sim-cta.alt:hover, .sim-cta.alt:focus-visible { background: rgba(255,255,255,.15); color: #fff; }
@media (max-width: 640px) {
  .sim-banner-text { position: static; background: #0b2a44; padding: 22px 15px 24px; }
  .sim-banner-text h1 { font-size: 28px; }
  .sim-banner-text h2 { font-size: 15px; }
  .sim-chip { left: 4px; top: 4px; font-size: 10px; padding: 4px 8px 4px 5px; }
  .sim-chip i { width: 11px; height: 11px; }
}
@media (prefers-reduced-motion: reduce) { .bn-foto, .bn-foto div, .sim-chip i { transition: none; } }
.banner-sobre-nos .banner-sub { color: #fff; text-align: center; font: 500 18px/1.4 "Inter", sans-serif; margin: 6px 0 0; }
@media (min-width: 992px) { .banner-sobre-nos h1 { padding-top: 190px; } }
