/* reset básico */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* base do body */
body {
  font-family: 'Roboto', sans-serif;
  color: #1c1c1c;
  background-color: #fff;
  line-height: 1.6;
}

/* títulos padrão */
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  color: #333;
  margin-bottom: 20px;
}

h1 { font-size: 2.5rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.75rem; }

/* parágrafos e texto */
p {
  font-size: 1rem;
  margin-bottom: 15px;
  color: #444;
}

a {
  color: #0073e6;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

/* botões padrão */
button, .btn {
  background-color: #ff0000;
  color: white;
  padding: 10px 25px;
  border: none;
  border-radius: 5px;
  font-size: 1.1rem;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

button:hover, .btn:hover {
  background-color: #ff0000;
}

/* seção e containers */
section {
  padding: 50px 0;
}

.container {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
}

/* utilidades */
.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}

/* grid básico */
.row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}

.col {
  padding: 15px;
  flex: 1;
}

@media (max-width: 768px) {
  .row {
    flex-direction: column;
  }
  h1 { font-size: 2rem; }
  h2 { font-size: 1.75rem; }
  h3 { font-size: 1.5rem; }
}
















































/* ======================================================
   1) Remove todo espaçamento (gap/margins/paddings) no
      container pai que envolve esses blocos (ID 7e5dd6d1)
   ====================================================== */
[data-id="7e5dd6d1"] > .e-con-inner {
  display: block !important;
  padding: 0 !important;
  gap: 0 !important;
}

/* Anula margens e paddings dos filhos diretos desse pai */
[data-id="7e5dd6d1"] > .e-con-inner > .elementor-element {
  margin: 0 !important;
  padding: 0 !important;
}











/* ========================================================
   3) Anula qualquer variável de margin-bottom no bloco
      anterior (31676b65), caso também use variáveis
   ======================================================== */
[data-id="31676b65"] {
  --margin-bottom: 0 !important;
  margin-bottom: 0 !important;
}







/* ============ CLEAN FIX “Apoio contínuo…” ============ */

/* 1) Container externo: remove deslocamentos */
.elementor-9 .elementor-element-5ec8e776 {
  margin-top: 0 !important;
  transform: none !important;
  padding: 0 !important;
}

/* 2) Bloco interno: padding e altura mínima */
.elementor-9 .elementor-element-18c23258 {
  /* padronize o acolchoamento interno: 60px topo/baixo, 30px laterais (ajuste como quiser) */
  padding: 60px 30px !important;
  
  /* força uma altura mínima para o card não “encolher” */
  min-height: 350px !important;
}





p.seu-paragrafo {
  font-family: 'Inter', sans-serif !important;
  font-weight: 400; /* ou o peso desejado */
  color: #ffffff;
}










#testimonials {
  padding: 60px 20px;
  background: #111;
  color: #fff;
  text-align: center;
}
.testimonials-title {
  font-family: 'Cardo', serif;
  font-size: 2.5rem;
  margin-bottom: 30px;
}
.testimonials-wrapper {
  position: relative;
  overflow: hidden;
}
.testimonials-slider {
  display: flex;
  transition: transform 0.4s ease;
}
.testimonial {
  flex: 0 0 calc(33.333% - 20px);
  margin: 0 10px;
}
.testimonial video {
  width: 100%;
  height: auto;
  border-radius: 8px;
  background: #000;
}
.nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255,255,255,0.1);
  border: none;
  color: #fff;
  font-size: 2rem;
  width: 40px;
  height: 60px;
  cursor: pointer;
  z-index: 10;
}
.prev { left: 0; }
.next { right: 0; }
.nav:hover {
  background: rgba(255,255,255,0.3);
}
@media (max-width: 900px) {
  .testimonial { flex: 0 0 calc(50% - 20px); }
}
@media (max-width: 600px) {
  .testimonial { flex: 0 0 100%; margin: 0; }
  .nav { display: none; }
}









/* == GRID 3×3 E REMOÇÃO DE FLEX/SETAS == */
section#testimonials {
  padding: 60px 20px;
  background: #111;
  color: #fff;
  text-align: center;
}

section#testimonials .testimonials-title {
  font-family: 'Cardo', serif;
  font-size: 2.5rem;
  margin-bottom: 30px;
}

section#testimonials .testimonials-wrapper {
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  overflow: visible !important;
  position: relative !important;
}

/* grid 3 colunas, 3 linhas automaticamente */
section#testimonials .testimonials-wrapper > .testimonials-slider {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  gap: 20px !important;
  width: 100% !important;
  transform: none !important;
}

/* cada vídeo ocupa 100% da célula do grid */
section#testimonials .testimonial {
  margin: 0 !important;
  width: 100% !important;
}

/* remove quaisquer flechas de navegação se ainda existirem */
section#testimonials .nav {
  display: none !important;
}

















/* ====== Título de Depoimentos – Espaçamento Apertado ====== */
.testimonials-title {
  font-family: 'Cardo', serif;
  text-align: center;
  line-height: 1;             /* espaçamento base */
  margin-bottom: 2rem;
}

.testimonials-title .title-line1 {
  display: block;
  color: #ffffff;
  font-style: italic;
  font-size: 53px;
  font-weight: 900;
  margin-bottom: -0.15em;      /* “puxa” a segunda linha pra cima */
}

.testimonials-title .title-line2 {
  display: block;
  font-style: italic;
  font-size: 53px;
  font-weight: 900;
  background: linear-gradient(90deg, #DEB385 0%, #C89255 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-top: -0.15em;         /* remove o gap sobrando acima */
  padding-bottom: 7px;
}






p.seu-paragrafo {
  font-family: 'Cardo', sans-serif !important;
  font-weight: 900; /* ou o peso desejado */
}





























































/* ========== Nova section 3 caixas horizontal ========== */

.three-cards-section {
  background: transparent; /* mantém o fundo atual */
  padding: 60px 0;         /* espaço acima e abaixo da section */
}

.three-cards-section .container-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.three-cards-section .section-header {
  text-align: center;
  margin-bottom: 40px;
}

.three-cards-section .section-title {
  /* mesmos estilos do seu <h2> principal */
  font-family: inherit;
  font-size: 36px;
  font-weight: 600;
  color: #FFFFFF;
  line-height: 1.2;
  margin: 0;
}

.three-cards-section .cards-wrapper {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.three-cards-section .card-item {
  background: rgba(255,255,255,0.05); /* ou use a cor do bloco atual */
  border: 1px solid #FFFFFF;
  border-radius: 8px;
  padding: 30px 20px;
  flex: 1;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

.three-cards-section .card-item + .card-item {
  /* garante gap igual, caso precise reforçar */
  margin-left: 20px;
}

.three-cards-section .card-title {
  /* mesmos estilos de subtítulo interno */
  font-family: inherit;
  font-size: 24px;
  font-weight: 500;
  color: #DEB385; /* ex.: cor dos ícones/textos de destaque */
  line-height: 1.3;
  margin: 0 0 20px;
}

.three-cards-section .card-list {
  list-style: none;
  padding: 0;
  margin: 0;
  color: #FFFFFF;      /* texto branco puro */
  font-size: 18px;     /* mesmo do seu parágrafo (23px se preferir) */
  line-height: 1.6;
}

.three-cards-section .card-list li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 12px;
}

.three-cards-section .card-list li:before {
  content: "✔";       /* ou use um ícone via SVG/background */
  position: absolute;
  left: 0;
  top: 2px;
  color: #DEB385;
  font-size: 18px;
  line-height: 1;
}

@media (max-width: 900px) {
  .three-cards-section .cards-wrapper {
    flex-wrap: wrap;
  }
  .three-cards-section .card-item {
    flex: 0 0 calc(50% - 10px);
    margin-bottom: 20px;
  }
}

@media (max-width: 600px) {
  .three-cards-section .card-item {
    flex: 0 0 100%;
  }
}











/* container geral */
.meus-cards {
  text-align: center;
  margin: 100px auto; /* ajuste espaçamento geral */
  max-width: 1200px;
  padding: 0 15px;
}

/* título principal (herda Cardo global) */
.meus-cards__titulo {
  font-family: var(--wp--preset--font-family--heading); /* Cardo, conforme root :contentReference[oaicite:4]{index=4} */
  font-size: var(--wp--preset--font-size--x-large);
  color: #FFFFFF;
  margin-bottom: 50px;
}

/* linha de 3 colunas */
.meus-cards__row {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
  justify-content: center;
}

/* cada cartão */
.meus-cards__card {
  background: #1C1C1C;
  border: 1px solid #DEB385;
  border-radius: 12px;
  padding: 25px;
  flex: 1 1 300px; /* três de ~300px lado a lado */
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

/* título do cartão (Playfair Display itálico) */
.meus-cards__card-title {
  font-family: "Playfair Display", Sans-serif; /* igual ao Elementor :contentReference[oaicite:5]{index=5} */
  font-size: 36px;
  font-weight: 700;
  font-style: italic;
  color: #DEB385;
  margin-bottom: 20px;
}

/* lista do cartão (Ubuntu) */
.meus-cards__card-list {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
}
.meus-cards__card-list li {
  position: relative;
  padding-left: 25px;
  margin-bottom: 10px;
  font-family: "Ubuntu", Sans-serif; /* igual ao Elementor :contentReference[oaicite:6]{index=6} */
  font-size: 20px;
  font-weight: 400;
  color: #FFFFFF;
}
.meus-cards__card-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #DEB385;
  font-weight: bold;
}



.meus-cards__titulotop {
  /* Mesma fonte serif (Playfair Display), itálico, tamanho e espaçamento do Elementor */
  font-family: "Playfair Display", Sans-serif !important;
  font-size: 48px !important;      /* ajuste se o seu site usar outro valor */
  line-height: 1.2 !important;
  text-align: center !important;
  margin: 0 0 50px !important;      /* espaço abaixo, ajuste conforme o layout */
}






/* ======== Estilo exato do título “O que você busca…” ======== */
.meus-cards__titulo {
  /* Mesma fonte serif (Playfair Display), itálico, tamanho e espaçamento do Elementor */
  font-family: "Playfair Display", serif !important;
  font-size: 48px !important;      /* ajuste se o seu site usar outro valor */
  font-style: italic !important;
  line-height: 1.2 !important;
  text-align: center !important;
  margin: 0 0 50px !important;      /* espaço abaixo, ajuste conforme o layout */
}

/* Primeira linha em branco puro */
.meus-cards__titulo-line1 {
  display: block;
  color: #FFFFFF !important;
}

/* Segunda linha com o tom dourado */
.meus-cards__titulo-line2 {
  display: block;
  color: #DEB385 !important;
}










/* —— Espaçamento exato entre as linhas do título —— */
.meus-cards__titulo {
  /* força um line-height enxuto */
  line-height: 1 !important;         /* experimente 1.05 ou 1.1 se quiser um pouco mais de folga */
}

/* como estamos usando spans em block, reduzimos o gap interno */
.meus-cards__titulo-line1,
.meus-cards__titulo-line2 {
  display: inline-block !important;  /* inline-block respeita line-height corretamente */
  line-height: 1 !important;         /* mesmíssimo valor do pai para não quebrar nada */
  margin: 0 !important;              /* zera margens implícitas */
  padding: 0 !important;
}



















/* ——— Estilos EXATOS dos botões nativos do site, aplicados em meus-cards ——— */
.meus-cards .elementor-button.elementor-size-sm {
  /* Display & box model */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;

  /* Tipografia */
  font-family: "Ubuntu", sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;

  /* Cores & bordas */
  background-color: #111111 !important;   /* var(--wp--preset--color--contrast) */
  color:            #f9f9f9 !important;   /* var(--wp--preset--color--base) */
  border:           0 !important;
  border-radius:    4px !important;

  /* Espaçamento interno */
  padding: 1rem 2.9rem !important;         /* 9.6px 16px aproximadamente */

  /* Transições */
  transition: background-color 0.2s ease, color 0.2s ease !important;
}

/* Hover / Focus */
.meus-cards .elementor-button.elementor-size-sm:hover,
.meus-cards .elementor-button.elementor-size-sm:focus {
  background-color: #636363 !important;   /* var(--wp--preset--color--contrast-2) */
  color:            #000000 !important;
  text-decoration: underline !important;
}

/* Active */
.meus-cards .elementor-button.elementor-size-sm:active {
  background-color: #ff0000 !important;   /* volta ao contraste original */
  color:            #ffffff !important;
}








/* ————— Ajuste do botão da section meus-cards ————— */
.elementor-element-3e84e105 .elementor-button.elementor-size-sm {
  /* padding igual aos outros buttons */
  padding: 1rem 2.9rem !important;          /* 9.6px 16px */
  /* mesmíssima tipografia */
  font-family: "Ubuntu", sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  /* cores idênticas */
  background-color: #111111 !important;     /* var(--wp--preset--color--contrast) */
  color:            #000000 !important;     /* var(--wp--preset--color--base) */
  /* borda e radius */
  border: none !important;
  border-radius: 4px !important;
  /* alinhamento interno */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* hover/focus/active idêntico */
.elementor-element-3e84e105 .elementor-button.elementor-size-sm:hover,
.elementor-element-3e84e105 .elementor-button.elementor-size-sm:focus {
  background-color: #636363 !important;     /* var(--wp--preset--color--contrast-2) */
}
.elementor-element-3e84e105 .elementor-button.elementor-size-sm:active {
  background-color: #111111 !important;
}









/* ========== Seção de Bandeiras ========== */
.flags-section {
  padding: 60px 0;        /* espaço acima/abaixo da seção */
  background: #111111;    /* fundo escuro, combine com seu tema */
}

.flags-section .container-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.flags-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;              /* espaço entre as imagens */
}

.flags-grid img {
  display: block;
  width: 100%;
  height: auto;
  border: 2px solid #DEB385;  /* contorno dourado opcional */
  border-radius: 8px;         /* cantos arredondados */
  box-sizing: border-box;
}

/* responsividade: 2 colunas em tablets, 1 em mobile */
@media (max-width: 900px) {
  .flags-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .flags-grid {
    grid-template-columns: 1fr;
  }
}















/* ========== Seção de Citação ========== */
.quote-section {
  background: transparent; /* mantém o fundo escuro padrão */
  padding: 60px 0;         /* espaçamento acima e abaixo */
}

.quote-section .container-inner {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
}

.quote-text {
  font-family: "Playfair Display", serif !important; /* mesma serif itálica */
  font-style: italic !important;
  font-size: 44px !important;                        /* tamanho próximo aos H2 */
  line-height: 1.3 !important;
  color: #DEB385 !important;                         /* texto branco puro */
  text-align: center !important;
  margin: 0;
}

.quote-text-line {
  display: block;
  margin: 0;
}

/* Reduz o espaçamento entre as linhas da citação */
.quote-text {
  line-height: 1.1 !important;    /* experimente valores entre 1.0 e 1.2 até ficar ideal */
}

.quote-text-line {
  display: inline-block !important;  /* inline-block respeita o line-height do pai */
  margin: 0 !important;
  padding: 0 !important;
}




/* ————— Faixa dourada horizontal entre seções ————— */
.divider-band {
  width: 100%;
  height: 5px;               /* ajuste a altura conforme sua referência */
  background-color: #DEB385;  /* mesmo dourado dos detalhes do site */
  margin: 0 0;             /* espaçamento acima e abaixo da faixa */
  box-sizing: border-box;
}





/* Anula margens internas e aplica –7% em cima e em baixo, simetricamente */
.elementor-element-5ec8e776 {
  margin-top:    -3% !important;
  margin-bottom: -3% !important;
}







/* ——— Equaliza o gap acima e abaixo do bloco 5ec8e776 ——— */
.elementor-9 .elementor-element.elementor-element-5ec8e776 {
  /* Zera quaisquer valores antigos */
  --margin-top: 0 !important;
  --margin-bottom: 0 !important;
  margin-top: -4% !important;      /* seu espaçamento negativo acima */
  margin-bottom: -3% !important;   /* aplica o mesmo negativo abaixo */
}



























/* ========== Hero Fallback Mobile (≤900px) ========== */
@media (max-width: 900px) {
  /* 1) Esconde o hero original do Elementor */
  .elementor-element-14f54a4f.e-con-full.e-flex.e-con.e-child {
    display: none !important;
  }

  /* 2) Exibe nosso hero-mobile-fallback */
  .hero-mobile-fallback {
    display: block !important;
    width: 100%;
    background: #000;
    text-align: center;
    padding: 0;
    margin: 0 auto 30px;
    box-sizing: border-box;
  }

  .hero-mobile-fallback .h-mf__img {
    width: 100%;
    height: auto;
    display: block;
  }

  .hero-mobile-fallback .h-mf__logo-wrapper {
    margin: -30px auto 10px;
  }
  .hero-mobile-fallback .h-mf__logo {
    width: 140px;
    height: auto;
    display: block;
    margin: 0 auto;
  }

  .hero-mobile-fallback .h-mf__title {
    font-family: "Playfair Display", serif;
    font-style: italic;
    font-size: 28px;
    line-height: 1.2;
    color: #fff;
    margin: 20px 15px 10px;
  }

  .hero-mobile-fallback .h-mf__subtitle {
    font-family: "Ubuntu", sans-serif;
    font-size: 20px;
    line-height: 1.5;
    color: #fff;
    margin: 10px 20px 20px;
  }

  .hero-mobile-fallback .h-mf__btn {
    display: inline-block;
    font-family: "Ubuntu", sans-serif;
    font-size: 19px;
    background-color: #ff0000;
    color: #ffffff;
    text-decoration: none;
    padding: 0.8rem 1.5rem; 
    border-radius: 4px;
    margin-bottom: 30px;
    transition: background-color #ff0000;
  }
  .hero-mobile-fallback .h-mf__btn:hover {
    text-decoration: underline;
    background-color: #ff0000;
  }
  
}

/* No desktop, a fallback fica escondida */
@media (min-width: 901px) {
  .hero-mobile-fallback {
    display: none !important;
	margin-top:-13%;
  }
}

















/* ——— Ajustes só para mobile (até 768px) ——— */
@media (max-width: 768px) {
  
  /* 1) Blocos 2 e 3: força fonte, cor e espaçamento iguais ao bloco 1 */
  .elementor-element-53ae8a26 .elementor-widget-container p,
  .elementor-element-4eb1f6ef .elementor-widget-container p {
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Também remove o ponto solto do <br>. que estava aparecendo no final */
  .elementor-element-53ae8a26 .elementor-widget-container p br + text {
    display: none;
  }


  /* 2) Bloco “Encontros Semanais Exclusivos” (container 7b1a8229)
     garante visibilidade, padding e tipografia corretos */
  .elementor-element-7b1a8229 {
    padding: 40px 20px !important;
    display: block !important;
  }
  .elementor-element-793a41b2 .elementor-heading-title {
    color: #DEB385 !important;
    font-size: 28px !important;
    font-style: italic !important;
    line-height: 1.3 !important;
    text-align: center !important;
    margin-bottom: 16px !important;
  }
  .elementor-element-24e34feb .elementor-widget-container p {
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1.6 !important;
    text-align: center !important;
  }

  /* 3) Garante que os containers não estejam ocultos no mobile */
  .elementor-element-2ab87c9a,
  .elementor-element-71566b1a,
  .elementor-element-7b1a8229 {
    /* remove quaisquer classes de “hidden-mobile” */
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
  }
}










@media (max-width: 768px) {

  /* 1) Texto blocos 2 e 3 igual ao bloco 1 */
  /* bloco 2 = id 24e34feb, bloco 3 = id 27488681 */
  .elementor-element-24e34feb .elementor-widget-container p,
  .elementor-element-27488681 .elementor-widget-container p {
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

 

 

  /* Se houver parágrafos em 48c3f7b9 (filho vazio), garanta que apareçam caso tenham conteúdo */
  .elementor-element-48c3f7b9 .elementor-image-box-description {
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  
  
  
  
  
  
  
  
  
  

  /* 2) Centraliza o título “Como funciona” e afasta do bloco acima */
  .elementor-element-658d2886 .elementor-heading-title {
    text-align: center !important;
    margin: 0 auto 20px !important;
    font-size: 28px !important;
    line-height: 1.2 !important;
  }



 
  



 
/* ==================================================
   mobile-only line break via span
   ================================================== */

/* 1) por padrão (desktop/tablet), manter escondido */
.mobile-br {
  display: none !important;
}

/* 2) em mobile (até 768px), exibir como block para gerar salto */
@media (max-width: 768px) {
  .mobile-br {
    display: block !important;
    /* sem margens ou paddings extras */
    margin: 0 !important;
    padding: 0 !important;
  }
}



  
  
  /* ===== mobile-only line break via span ===== */

/* Por padrão (desktop/tablet), escondido */
.mobile-font {
  display: none !important;
}

/* Em mobile (até 768px), gera a quebra de linha */
@media (max-width: 768px) {
  .mobile-font {
    display: block !important;      /* força block para criar salto */
    content: "" !important;         /* elemento vazio, mas block cria linha nova */
    margin: 0 !important;
    padding: 0 !important;
	font-size: 21px;
  }
}

  
  
  
  
  
  
  
  
   /* ===== mobile-only line break via span ===== */

/* Por padrão (desktop/tablet), escondido */
.mobile-tfont {
  display: none !important;
}

/* Em mobile (até 768px), gera a quebra de linha */
@media (max-width: 768px) {
  .mobile-tfont {
    display: block !important;      /* força block para criar salto */
    content: "" !important;         /* elemento vazio, mas block cria linha nova */
    margin: 0 !important;
    padding: 0 !important;
	font-size: 25px;
  }
}
 
  
  
  
  
     /* ===== mobile-only line break via span ===== */

/* Por padrão (desktop/tablet), escondido */
.mobile-tbfont {
  display: none !important;
}

/* Em mobile (até 768px), gera a quebra de linha */
@media (max-width: 768px) {
  .mobile-tbfont {
    display: block !important;      /* força block para criar salto */
    content: "" !important;         /* elemento vazio, mas block cria linha nova */
    margin: 0 !important;
    padding: 0 !important;
	font-size: 37px;
  }
}
  
  
  
  
  
  
  
  

/* por padrão (desktop), escondido */
.mobile-only {
  display: none !important;
  margin-top:-15%;
}

.mobile-only2 {
  display: none !important;
  margin-bottom:-9%;
}



/* só em telas até 768px, exibe */
@media (max-width: 768px) {
  .mobile-only {
    display: inline !important; /* ou block, conforme precisar */
  }
}






















/* ========= Testimonials: 1 vídeo por linha no Mobile ========= */
@media (max-width: 768px) {
  /* Faz o grid descer para 1 coluna */
  section#testimonials .testimonials-wrapper > .testimonials-slider {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important; /* mantém o espaçamento vertical */
  }
  /* Garante que cada .testimonial ocupe 100% da largura */
  section#testimonials .testimonial {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}














@media (max-width: 900px) {
  /* 1) Evita que “Como funciona” invada o bloco acima */
  .elementor-9 .elementor-element-31676b65 {
    margin-top: 1.5rem !important;
  }

  /* 2) Reordena os três cards de imagem-box no timeline mobile */
  /* — processo seletivo — */
  .elementor-9 .elementor-hidden-desktop.elementor-hidden-tablet
    .elementor-element-5d9e6dc0 {
    order: 1 !important;
  }
  /* — ciclo de 06 semanas — */
  .elementor-9 .elementor-hidden-desktop.elementor-hidden-tablet
    .elementor-element-63619c1f {
    order: 2 !important;
  }


  /* Coloca os três itens empilhados em coluna e centralizados */
  .elementor-9 .elementor-hidden-desktop.elementor-hidden-tablet {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 1.5rem !important;
    padding: 0 !important;
  }

  /* Ajusta largura e alinhamento interno de cada box */
  .elementor-9 .elementor-hidden-desktop.elementor-hidden-tablet
    .elementor-widget-image-box {
    width: 100% !important;
    box-sizing: border-box;
    padding: 0 1rem !important;
  }
  .elementor-9 .elementor-hidden-desktop.elementor-hidden-tablet
    .elementor-image-box-content {
    text-align: center !important;
  }

  /* 3) Garante que o próximo bloco (o call-to-action) apareça corretamente */
  .elementor-9 .elementor-element-7ab4ad00 {
    margin-top: 2rem !important;
  }
}



/* Oculta todo o bloco de desktop “Meus Cards” apenas em telas até 768px */
@media only screen and (max-width: 768px) {
  .meus-cards {
    display: none !important;
  }
}































/* === TIMELINE “Como funciona” – MOBILE ONLY (até 768px) === */
@media (max-width: 768px) {
  /* 1) Remove o bloco desktop completo dos image-boxes */
  .elementor-element-4c2d4a74.elementor-hidden-mobile {
    display: none !important;
  }

  /* 2) Ajusta o container pai (“Como funciona”) */
  .elementor-element-50a65bde {
    margin: 20px 0 10px !important;
    padding: 0 !important;
  }
  .elementor-element-658d2886 .elementor-heading-title {
    text-align: center !important;
    margin-bottom: 16px !important;
    font-size: 28px !important;
    line-height: 1.2 !important;
  }

  /* 3) Empilha as duas etapas mobile em coluna */
  .elementor-element-1053cca5,
  .elementor-element-7b1b83af {
    display: block !important;
    width: 100% !important;
    margin: 0 0 24px !important;
    padding: 0 16px !important;
  }

  /* 4) Centraliza e ajusta ícones da linha */
  .elementor-element-3387b98a .elementor-icon svg {
    display: block !important;
    margin: 0 auto 24px !important;
    width: 20px !important;
    height: 20px !important;
  }

  /* 5) Tipografia dos títulos e textos das etapas */
  .elementor-element-1053cca5 .elementor-image-box-title,
  .elementor-element-7b1b83af .elementor-image-box-title {
    font-size: 24px !important;
    color: #DEB385 !important;
    margin-bottom: 8px !important;
    text-align: left !important;
  }
  .elementor-element-1053cca5 .elementor-image-box-description,
  .elementor-element-7b1b83af .elementor-image-box-description {
    font-size: 18px !important;
    color: #ffffff !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    text-align: left !important;
  }
}




@media (max-width: 768px) {
  /* 1) Zera todo espaço (topo e base) do container “Como funciona” */
  .elementor-element-50a65bde {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 2) Remove gap de margem entre o título e o primeiro bloco */
  .elementor-element-658d2886 + .elementor-element-1053cca5 {
    margin-top: 0 !important;
  }

  /* 3) Zera margem entre os três itens da timeline mobile */
  .elementor-element-1053cca5,
  .elementor-element-7b1b83af {
    margin: 0 !important;
    padding: 0 16px !important; /* mantém o padding lateral */
  }

  /* 4) Remove qualquer gap deixado pelo ícone da linha */
  .elementor-element-3387b98a {
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor-element-3387b98a .elementor-icon-wrapper {
    margin: 0 !important;
  }

  /* 5) Se sobrar ainda um br ou span solto, esconda também */
  .elementor-element-50a65bde br,
  .elementor-element-50a65bde span {
    display: none !important;
  }
  
  /* =========== Simplifica timeline no mobile =========== */
@media (max-width: 768px) {
  /* 1) Esconde toda a linha de ícones (quebra de espaço) */
  .elementor-element-3387b98a {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 2) Zera margem/padding do container pai “Como funciona” */
  .elementor-element-50a65bde {
    margin: 0 !important;
    padding: 0 0 0 !important;
  }

  /* 3) Remove gap entre título e primeiro bloco */
  .elementor-element-658d2886 {
    margin-bottom: 0 !important;
  }

  /* 4) Empilha e aproxima os dois image-boxes restantes */
  .elementor-element-1053cca5,
  .elementor-element-7b1b83af {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 16px !important;
  }
}

  
  
}







































@media (max-width: 768px) {
  /* 1) Remove todo espaçamento do container pai “Como funciona” */
  .elementor-element-50a65bde {
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 2) Aproxima o título do bloco anterior e ajusta seu espaçamento */
  .elementor-element-658d2886 .elementor-heading-title {
    margin: 0 0 8px !important;
  }

  /* 3) Esconde por completo o container desktop-only e a linha de ícones */
  .elementor-element-4c2d4a74.elementor-hidden-mobile,
  .elementor-element-3387b98a {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 4) Junta os três passos mobile, um abaixo do outro, sem gaps extras */
  /* IDs 5d9e6dc0 = Processo seletivo; 1053cca5 = Ciclo; 7b1b83af = Crescimento */
  .elementor-element-5d9e6dc0,
  .elementor-element-1053cca5,
  .elementor-element-7b1b83af {
    display: block !important;
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 16px !important;
  }

  /* 5) Elimina qualquer <br> ou span solto que crie pontinhos */
  .elementor-element-50a65bde br,
  .elementor-element-50a65bde span {
    display: none !important;
  }
}






















/* ========================
   Forçar título e botão em uma linha só no mobile
======================== */
@media (max-width: 768px) {
  /* Container pai como flex e alinhamento */
  .elementor-element-7ab4ad00 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
  /* Remover quebras internas e forçar inline */
  .elementor-element-69836540 h2 {
    white-space: nowrap !important;
    margin: 0 !important;
  }
  .elementor-element-69836540 h2 b {
    display: inline !important;
    margin-left: 4px !important;
  }
  /* Botão alinhar inline e manter tamanho */
  .elementor-element-7e6a070e {
    margin: 0 !important;
  }
  .elementor-element-7e6a070e .elementor-button {
    display: inline-block !important;
    white-space: nowrap !important;
  }
  /* Anula margens internas e aplica –7% em cima e em baixo, simetricamente */
  .puxa-up {
  
  padding-bottom: -17% !important;
  }
}







/* custom-style.css — ajuste apenas no mobile, sem impactar desktop */
@media (max-width: 768px) {
  /* Seletor da sua seção “Pronto para o próximo passo?” */
  .elementor-element-7ab4ad00.e-parent {
    margin-top:   -14% !important;   /* puxa o bloco 4px para cima */
    margin-bottom: -18% !important;  /* “puxa” o próximo bloco para cima também */
  }
}














/* ========= Remove saltos manuais acima da imagem só no mobile ========= */
@media (max-width: 900px) {
  /* 1) Esconde TUDO que for <br> dentro desse widget */
  .elementor-element-8b12eac .elementor-widget-container br {
    display: none !important;
  }

  /* 2) Zera qualquer padding/margin extra do container */
  .elementor-element-8b12eac {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}













@media (max-width: 900px) {
  /* 1) Garante 7px entre a imagem e o botão */
  .elementor-element-1b0200a img {
    margin-bottom: 17px !important;
  }

  /* 2) Reduz o espaço abaixo do botão antes de “Depoimentos” */
  .elementor-element-624542f6 {
    margin-bottom: -50% !important; /* ajuste esse valor até ficar do seu gosto */
  }
}




@media (max-width: 768px) {
  /* 1) Faz o container pai (1c39efb8) virar coluna */
  .elementor-element-1c39efb8.e-parent {
    flex-direction: column !important;
  }

  /* 2) Garante 100% de largura para cada título */
  .elementor-element-4384f1c,
  .elementor-element-1316986f {
    width: 100% !important;
  }

  /* 3) Centraliza o texto de ambos os <h2> */
  .elementor-element-4384f1c .elementor-heading-title,
  .elementor-element-1316986f .elementor-heading-title {
    text-align: center !important;
    margin: 0 auto !important;
  }
}













  /* 1) Garante margem entre a imagem e o botão */
  .mdspace {
    margin-top: 15% !important;
  }

}

  /* 1) Garante margem entre a imagem e o botão */
  .mdsspace {
    margin-top: -20% !important;
  }

}







@media (max-width: 900px) {
  /* 1) Garante margem entre a imagem e o botão */
  .mspace {
    margin-top: -45% !important;
	text-align: center;
	padding: 0 auto
  }

}






















/*— Ajustes Mobile (max-width: 768px) —*/
@media (max-width: 768px) {
  /* 1) Diminui o espaço abaixo da bandeira */
  .flags-section {
    /* antes era padding: 60px 0; */
    padding-top: 30px !important;    /* mantém o espaçamento de cima */
    padding-bottom: -7px !important;  /* só 7px embaixo, conforme solicitado */
  }

  /* 2) Centraliza o título “Faq” */
  /* .elementor-element-4384f1c contém o <h2> “Faq” */
  .elementor-element-4384f1c .elementor-heading-title,
  /* .elementor-element-1316986f contém o <h2> “Perguntas Frequentes” */
  .elementor-element-1316986f .elementor-heading-title {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}



















@media (max-width: 768px) {
  /* targets apenas o widget “Faq” (data-id="4384f1c") */
  .elementor-element-4384f1c .elementor-heading-title {
    text-align: center !important;
    margin: 0 auto !important;
  }

  /* targets apenas o widget “Perguntas Frequentes” (data-id="1316986f") */
  .elementor-element-1316986f .elementor-heading-title {
    text-align: center !important;
    margin: 0 auto !important;
  }
}






































@media (max-width: 767px) {
  /* 1) Forçar o texto do botão a não quebrar linha, sem alterar tamanho de fonte */
  .elementor-button.elementor-size-sm .elementor-button-content-wrapper,
  .elementor-button.elementor-size-sm .elementor-button-text {
    white-space: nowrap !important;
	margin: auto;
	padding: auto;
  }

  /* 2) Diminuir espaçamento acima e abaixo do título “Garantia…” */
  .elementor-element-1d134935 .elementor-heading-title {
    margin-top: 0.2em !important;
    margin-bottom: 0.2em !important;
    line-height: 1.2 !important;
  }
}




@media (max-width: 767px) {
  /* === 1) CENTRALIZAR O BOTÃO === */
  /* Alvo o wrapper e o próprio <a> para ter certeza */
  html body .elementor-element-3e84e105.elementor-widget-button .elementor-button-wrapper {
    text-align: center !important;
	margin: 0 auto !important;
	background-color: #ff0000 !important;
	
	padding:0 auto !important;
	margin-left: -4%;
  }
  html body .elementor-element-3e84e105 .elementor-button {
    display: inline-block !important;
    margin: 0 auto !important;
    white-space: nowrap !important;
  }

  /* === 2) COMPACTAR “Garantia…” === */
  html body .elementor-element-1d134935 .elementor-heading-title {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.2 !important;
  }
  /* Oculta qualquer <span> ou <br> forçado no título */
  html body .elementor-element-1d134935 .elementor-heading-title span,
  html body .elementor-element-1d134935 .elementor-heading-title br {
    display: none !important;
  }
   
  html body .sleft {
    margin-left: -5% !important;
	padding: 0 0 0 0 !important;
	font-size: 21.2px !important;
  }
  
    .spaceband {
    margin-top: -15% !important;
	text-align: center !important;
	margin-left: 5% !important;
		
  }
  
    .spacebandeira {
    margin-bottom: -5% !important;
	text-align: center !important;
	margin-left: 5% !important;
		
  }
  
    .spacetextup {
    margin-top: -15% !important;
	text-align: center !important;
	
			
  }
  
      .spacetextupup {
    margin-top: -35% !important;
	text-align: center !important;
				
  }
  
    .spacetxtdown {
    margin-bottom: -5% !important;
	text-align: center !important;
	margin-left: 5% !important;
		
  } 

    .fonttxt {
    font-size: 21px !important;
	color: #ffffff !important;
  }
  
    .spacetoplider {
    padding-top: 4% !important;
	
  }
  
    .ladpad {
    padding: 0 auto 0 -5% !important;
	margin: 0 auto !important;
	margin-top: -25% !important;
	
  }
  
  
  
}



@media (max-width: 767px) {

    .spacebbandeira {
    padding-bottom: -20% !important;
			
  }
  
    html body .sbeft {
    margin-left: -3% !important;
	padding: 0 0 0 0 !important;
	font-size: 21.2px !important;
	background-color: #0F0F0F !important; ;
  }
  
}































    .spacedeskband {
    margin-bottom: 2% !important;
	margin-top: -4% !important;
  }




  
  
  
  
  
  
  
  
  @media (max-width: 767px) {
  /* 1) Sections e containers sempre 100% */
  .elementor-section,
  .elementor-container {
    width: 100% !important;
  }
  /* 2) Colunas empilham verticalmente */
  .elementor-column {
    display: block !important;
    width: 100% !important;
  }
  /* 3) Widgets não têm largura fixa */
  .elementor-widget {
    width: auto !important;
    max-width: 100% !important;
  }
  /* 4) Imagens/vídeos fluem sem alterar proporção */
  .elementor-widget img,
  .elementor-widget video,
  .elementor-widget iframe {
    max-width: 100% !important;
    height: auto !important;
  }
  /* 5) Botões centralizados sem mexer no font-size */
  .elementor-button-wrapper {
    text-align: center !important;
  }
  .elementor-button {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
    white-space: normal !important;
  }
  /* 6) Evita scroll horizontal */
  html, body {
    overflow-x: hidden !important;
  }
}

  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
/* 1) Desktop: oculta o <br> */
.mobile-only-br {
  display: none !important;
}

/* 2) Mobile (≤767px): exibe o <br> */
@media (max-width: 767px) {
  .mobile-only-br {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

  
  
  
  @media (max-width: 767px) {
  /* 1) Anula o hide genérico e reexibe SÓ o <br class="mobile-only-br"> */
  html body .elementor-element-1d134935 .elementor-heading-title br.mobile-only-br {
    display: block !important;
    /* garante que ocupe linha nova: */
    content: "" !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

  
  
  
  /* ===== Blindagem final: texto sempre branco nos CTAs vermelhos ===== */
html body .elementor-button.elementor-size-sm,
html body .elementor-button.elementor-size-sm .elementor-button-text,
html body .elementor-button.elementor-size-sm .elementor-button-text strong {
    color: #ffffff !important;
}

  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  


  
  

  
  
  
  
  
  
  
  

  
  
  
  
  /* === Força TODOS os CTAs a ficarem vermelhos (#ff0000) === */
.hero-mobile-fallback .h-mf__btn,
.elementor-element-3e84e105 .elementor-button.elementor-size-sm,
.meus-cards .elementor-button.elementor-size-sm,
.elementor-element-15532cd9 .elementor-button.elementor-size-sm,
.elementor-button.elementor-size-sm {
  background-color: #ff0000 !important;   /* fundo */
  color: #ffffff !important;              /* texto branco */
  border-color: #ff0000 !important;
}

/* estados de interação harmonizados */
.hero-mobile-fallback .h-mf__btn:hover,
.elementor-element-3e84e105 .elementor-button.elementor-size-sm:hover,
.meus-cards .elementor-button.elementor-size-sm:hover,
.elementor-element-15532cd9 .elementor-button.elementor-size-sm:hover,
.elementor-button.elementor-size-sm:hover {
  background-color: #ff0000 !important;   /* vermelho escuro no hover */
  color: #ffffff !important;
}

  
  
  
  
  
  

  
  
  
  
  
  
  
 
  
  
  
  


  /* ===== Override final – TODOS os CTAs em vermelho ===== */
html body .elementor-button-wrapper,
html body .hero-mobile-fallback .h-mf__btn,
html body a.elementor-button,
html body button,
html body input[type="submit"],
html body input[type="button"],
html body .wp-element-button{
  background-color:#ff0000 !important;
  border-color:#ff0000 !important;
  color:#ffffff      !important;   /* garante texto branco */
}














/* ============ cards-mobile → SÓ aparece até 768 px ============ */

/* a) Até 768 px (celular) → mostra */
@media (max-width: 768px) {
  .cards-mobile {                       /* wrapper  */
    display: block !important;
	margin-bottom: -17% !important;
  }
  .cards-mobile .meus-cards {           /* desfaz o “display:none” antigo */
    display: block !important;
	margin-bottom: -17% !important;
  }
}

/* b) A partir de 769 px (tablet/desktop) → esconde */
@media (min-width: 769px) {
  .cards-mobile {
    display: none !important;
	margin-bottom: -17% !important;
  }
}














/* ============ br-mob → SÓ aparece até 768 px ============ */

/* a) Até 768 px (celular) → mostra */
          {
  .br-mob {                       /* wrapper  */
    display: block !important;
	
  }
  .br-mob {           /* desfaz o “display:none” antigo */
    display: block !important;
	
  }
}

/* b) A partir de 769 px (tablet/desktop) → esconde */
@media (min-width: 769px) {
  .br-mob {
    display: none !important;
	
  }
}



             
  .font-mob3 {
    display: block !important;   /* só no desktop */
  }

/* 1) MOBILE FIRST  ─ regra padrão (celular)  */

/* 2) DESKTOP ─ a partir de 769 px ganha 69 px */
@media (min-width: 769px) {
  .font-mob3 {
    display: none !important;
    font-size: 40px !important;   /* só no desktop */
  }
}





/* esconde no mobile (display:none) */
.font-mob {
  display: none !important;
  font-size: 69px !important;
}

/* mostra e aplica tamanho no desktop */
@media (min-width: 769px) {
  .font-mob {
    display: block !important;        /* ou inline/inline-block, conforme o caso */
    
  }
}









/* ======== FLAGS – visível SÓ no mobile ======== */

/* MOBILE FIRST → mostra + 2 colunas */
.flags-mobile {                          /* todo o bloco */
  display: block;                        /* visível no celular */
}

.flags-mobile .flags-grid {              /* grade das bandeiras */
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 por linha        */
  gap: 8px;                              /* espaçamento opcional */
  place-items: center;                   /* centraliza cada img  */
}

/* DESKTOP/TABLET (≥ 769 px) → esconde tudo */
@media (min-width: 769px) {
  .flags-mobile {
    display: none !important;
  }
}












/* ========= flags-desktop → ESCONDE no mobile (≤768) ========= */

/* MOBILE – some totalmente */
@media (max-width: 768px) {
  .flags-desktop {
    display: none !important;
  }
}

/* DESKTOP/TABLET – mostra como bloco normal */
@media (min-width: 769px) {
  .flags-desktop {
    display: block !important;  /* ou flex/grid, se preferir */
	margin-top: -7% !important;
  }
}




















/* ========= flags-mobile-only → ESCONDE no desktop (≥ 769 px) ========= */

/* MOBILE (≤ 768 px) — exibe normalmente */
@media (max-width: 768px) {
  .flags-mobile-only {
    display: block !important;  /* ou flex/grid, se preferir */
  }
}

/* DESKTOP / TABLET (≥ 769 px) — oculta completamente */
@media (min-width: 769px) {
  .flags-mobile-only {
    display: none !important;
  }
}



/* ========= flags-mobile-only → ESCONDE no desktop (≥ 769 px) ========= */

/* MOBILE (≤ 768 px) — exibe normalmente */
@media (max-width: 768px) {
  .flags-mobiles-only {
    display: block !important;  /* ou flex/grid, se preferir */
	
  }
}

/* DESKTOP / TABLET (≥ 769 px) — oculta completamente */
@media (min-width: 769px) {
  .flags-mobiles-only {
    display: none !important;
  }
}






/* ========= flags-mobile-only → ESCONDE no desktop (≥ 769 px) ========= */

/* MOBILE (≤ 768 px) — exibe normalmente */
@media (max-width: 768px) {
  .color-mobiles-only {
    color: #DEB385 !important;  /* ou flex/grid, se preferir */
	font-size: 37px !important; 
  }
}





































/* =========================================================
   CLONE FIEL do botão-referência — sem alterar o original
   ========================================================= */

/* --- Valores do CTA (herdados do 3e84e105) -------------- */
:root{
  --cta-bg:       #ff0000;
  --cta-txt:      #ffffff;
  --cta-pad:      11px 18px;
  --cta-radius:   8px;
  --cta-font-dk:  25px;   /* ≥481 px */
  --cta-font-mb:  22px;   /* ≤480 px */
}

/* --- Alvo: todos os CTAs comuns ------------------------- */
/* (excluímos o 3e84e105 usando :not(.elementor-element-3e84e105) no pai) */

.elementor-widget-button:not(.elementor-element-3e84e105)    a.elementor-button,
.elementor-widget-button:not(.elementor-element-3e84e105)    .h-mf__btn,
button,
input[type="button"],
input[type="submit"],
.wp-element-button{
  background: var(--cta-bg)  !important;
  color:      var(--cta-txt) !important;

  padding:    var(--cta-pad) !important;
  border:     none           !important;
  border-radius: var(--cta-radius) !important;

  font-family: "Ubuntu", sans-serif !important;
  font-weight: 700          !important;
  text-transform: uppercase !important;
  line-height: 1.2          !important;
  text-align: center        !important;

  /* Largura flexível e centralizada */
  display: inline-block     !important;
  min-width: 220px;                     /* nunca fica minúsculo */
  max-width: 460px;                     /* nunca vira “faixa” */
  width: auto;
  margin: 0 auto !important;
  white-space: nowrap        !important;

  cursor: pointer;
  transition: filter .15s ease;
}

/* --- Font-size responsivo -------------------------------- */
@media (max-width:480px){
  .elementor-widget-button:not(.elementor-element-3e84e105) a.elementor-button,
  .elementor-widget-button:not(.elementor-element-3e84e105) .h-mf__btn,
  button,
  input[type="button"],
  input[type="submit"],
  .wp-element-button{
    font-size: var(--cta-font-mb) !important;
  }
}
@media (min-width:481px){
  .elementor-widget-button:not(.elementor-element-3e84e105) a.elementor-button,
  .elementor-widget-button:not(.elementor-element-3e84e105) .h-mf__btn,
  button,
  input[type="button"],
  input[type="submit"],
  .wp-element-button{
    font-size: var(--cta-font-dk) !important;
  }
}

/* --- Hover / Focus idênticos ----------------------------- */
.elementor-widget-button:not(.elementor-element-3e84e105) a.elementor-button:hover,
.elementor-widget-button:not(.elementor-element-3e84e105) a.elementor-button:focus,
.elementor-widget-button:not(.elementor-element-3e84e105) .h-mf__btn:hover,
.elementor-widget-button:not(.elementor-element-3e84e105) .h-mf__btn:focus,
button:hover,
button:focus,
.wp-element-button:hover,
.wp-element-button:focus{
  filter: brightness(1.05);
  text-decoration: underline;
}

/* --- Mata gradientes/bege residuais ---------------------- */
.elementor-widget-button:not(.elementor-element-3e84e105) a.elementor-button:before,
.elementor-widget-button:not(.elementor-element-3e84e105) a.elementor-button:after,
.has-accent-background-color{
  background: var(--cta-bg) !important;
  background-image: none    !important;
}
















































































/* ------------- DESKTOP ONLY (≥ 992 px) ------------ */
@media (min-width: 992px) {
  .hero-mobile-fallback .h-mf__bt {
    /* altere só o que precisar para desktop */
    font-size: 42px;
    padding: 1rem 2.5rem;
  }

  .hero-mobile-fallback .h-mf__bt:hover {
    text-decoration: underline;
    background-color: #ff0000;
  }
}


















/* ------------- DESKTOP ONLY (≥ 992 px) ------------ */
@media (min-width: 992px) {
  .hero-desktop-t1 {
    /* altere só o que precisar para desktop */
    color: #ffffff !important;
	font-size: 44px !important;
	
  }
}


/* ------------- DESKTOP ONLY (≥ 992 px) ------------ */
@media (min-width: 992px) {
  .hero-desktop-t2 {
    /* altere só o que precisar para desktop */
    color:#DEB385 !important;
	font-size: 44px !important;
	
  }
}







/* MOBILE (≤ 992 px) — exibe normalmente */
@media (min-width: 992px) {
  .hero-desktop-t1 {
    display: block !important;  /* ou flex/grid, se preferir */
	
  }
}

/* DESKTOP / TABLET (≥ 992 px) — oculta completamente */
@media (min-width: 992px) {
  .hero-desktop-t2 {
    display: block !important;
  }
}




@media (max-width: 768px) {
  .hero-desktop-t1 {
    display: none !important;  /* ou flex/grid, se preferir */
	
  }
}

/* DESKTOP / TABLET (≥ 992 px) — oculta completamente */
@media (max-width: 768px) {
  .hero-desktop-t2 {
    display: none !important;
  }
}


















/* === Depoimentos: enxuga o espaço < 768px === */
@media (max-width: 768px) {

  /* 1) Some com a quebra de linha extra */
  section#testimonials .testimonials-title br {
    display: none !important;
  }

  /* 2) Zera margens dos <p> internos usados só no desktop */
  section#testimonials .testimonials-title p {
    margin: 0 !important;
  }

  /* 3) Encosta o título nos vídeos */
  section#testimonials .testimonials-title {
    margin-bottom: -5.6rem !important;   /* de ~32 px para ~10 px */
    line-height: 1.1   !important;      /* segura bem as duas linhas */
  }
}





























































