/* ============================================
   INICIO - ESTILOS GLOBAIS
   ============================================ */

/* ============================================
   TODAS AS REGRAS ABAIXO SÓ APLICAM A PARTIR DE 769px
   Mobile e Tablet (até 768px) usam apenas post-3059.css
   ============================================ */

@media (min-width: 769px) {

  /* Remove botão WhatsApp da página de soluções */
  #btwhats,
  a[href*="wa.me"] {
    display: none !important;
  }

  /* Remove padding-top da section2 para eliminar espaço entre section1 e section2 */
  .elementor-3059 .elementor-element.elementor-element-5ca9fc8 {
    padding-top: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 40px !important;
    position: relative !important;
    /* Adicionar para o absolute funcionar */
    /* Espaçamento reduzido entre cards e footer */
  }

  .elementor-3059 .elementor-element.elementor-element-b1b6637 .elementor-column-wrap,
  .elementor-3059 .elementor-element.elementor-element-b1b6637 .elementor-element-populated {
    padding: 0 !important;
  }

  /* Ajustar imagem lateral esquerda - largura 200px e posição */
  .elementor-3059 .elementor-element.elementor-element-339c8e7 .elementor-image img {
    width: 200px !important;
    height: auto !important;
  }

  .elementor-3059 .elementor-element.elementor-element-339c8e7 {
    position: relative !important;
    top: 50px !important;
    /* Ajuste este valor para mover para cima (negativo) ou para baixo (positivo) */
  }

  /* Ajustar segunda imagem lateral esquerda - entre cards e footer */
  .elementor-3059 .elementor-element.elementor-element-esquerdo_imagem_2 .elementor-image img {
    width: 200px !important;
    height: auto !important;
    margin: 0 !important;
  }

  .elementor-3059 .elementor-element.elementor-element-esquerdo_imagem_2 {
    position: absolute !important;
    left: 0 !important;
    /* Gruda na borda esquerda */
    bottom: -75px !important;
    /* Metade do margin-bottom (40px / 2 = 20px) - fica no meio entre cards e footer */
    width: 200px !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 100 !important;
    /* Z-index alto para ficar sobre o footer */
  }

  /* Garantir que a coluna esquerda tenha position relative para o absolute funcionar */
  .elementor-3059 .elementor-element.elementor-element-b1b6637 .elementor-widget-wrap {
    position: relative !important;
  }

  /* Zerar padding da coluna direita (similar à esquerda) */
  .elementor-3059 .elementor-element.elementor-element-cb67cdd .elementor-column-wrap,
  .elementor-3059 .elementor-element.elementor-element-cb67cdd .elementor-element-populated {
    padding: 0 !important;
  }

  /* Zerar padding padrão do Elementor na coluna direita */
  .elementor-3059 .elementor-element.elementor-element-cb67cdd .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated {
    padding: 0 !important;
  }

  /* Ajustar imagem lateral direita - largura 200px e posição */
  .elementor-3059 .elementor-element.elementor-element-cb67cdd .elementor-image img {
    width: 200px !important;
    height: auto !important;
    margin: 0 !important;
  }

  .elementor-3059 .elementor-element.elementor-element-cb67cdd {
    position: relative !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .elementor-3059 .elementor-element.elementor-element-cb67cdd .elementor-widget-wrap {
    position: absolute !important;
    /* Absolute para não empurrar conteúdo */
    top: 600px !important;
    right: 0 !important;
    /* Gruda na borda direita */
    width: 200px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Linha vertical separadora - primeira linha (altura fixa) */
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-08ba910::after,
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-699f94c::after {
    content: '' !important;
    position: absolute !important;
    right: 0 !important;
    top: 0px !important;
    width: 0.1px !important;
    height: 472px !important;
    /* Altura fixa - ajuste conforme necessário */
    background-color: #000000 !important;
    z-index: 1 !important;
  }

  /* Linha vertical separadora - segunda linha (altura fixa) */
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-403f4a9::after,
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-a8282db::after,
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-26117a0::after {
    content: '' !important;
    position: absolute !important;
    right: 0 !important;
    top: 0px !important;
    /* Começa depois dos ícones (igual à primeira linha) */
    width: 0.1px !important;
    height: 476px !important;
    /* Altura fixa - ajuste conforme necessário */
    background-color: #000000 !important;
    z-index: 1 !important;
  }

  /* ============================================
   FIM - ESTILOS - GLOBAIS
   ============================================ */

  /* ============================================
   SECTION1 - Header de Soluções
   ============================================ */

  /* Header de soluções - proporção Figma (1920x912) */
  .elementor-element-c391105 {
    width: 100% !important;
    aspect-ratio: 1920 / 912 !important;
    min-height: 400px !important;
    max-height: 912px !important;
    position: relative !important;
    padding: 0 !important;
    margin: 0 !important;
    background-color: transparent !important;
    background-image: url("./index_files/fundo_header_solucoes.webp") !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    overflow: hidden !important;
  }

  /* Garantir que o container e row também ocupem 100% */
  .elementor-3059 .elementor-element.elementor-element-c391105 .elementor-container,
  .elementor-3059 .elementor-element.elementor-element-c391105 .elementor-row {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  @supports not (aspect-ratio: 1920 / 912) {
    .elementor-element-c391105 {
      height: 47.5vw !important;
      min-height: 400px !important;
      max-height: 912px !important;
    }
  }

  /* Ajuste específico para notebook (1536px) */
  @media (min-width: 1367px) and (max-width: 1919px) {
    .elementor-element-c391105 {
      max-height: 700px !important;
      /* ou o valor que você quiser para notebook */
      /* ou pode usar min-height se preferir */
    }
  }

  /* Aumenta a altura do header em telas grandes para cobrir toda a área e evitar linha branca */
  @media (min-width: 1920px) {
    .elementor-element-c391105 {
      max-height: none !important;
      /* Remove a limitação de altura */
      min-height: 100vh !important;
      /* Garante que cubra pelo menos 100% da viewport */
      aspect-ratio: auto !important;
      /* Remove o aspect-ratio para permitir altura maior */
    }
  }

  /* Ajuste do header para telas entre 768px e 1080px */
  @media (min-width: 769px) and (max-width: 1080px) {
    .elementor-element-c391105 {
      aspect-ratio: auto !important;
      min-height: 400px !important;
      height: auto !important;
      background-size: cover !important;
      background-position: center center !important;
    }
  }

  /* Texto abaixo da logo - posicionamento conforme Figma */
  .elementor-element-8cc05f8 p {
    position: absolute !important;
    margin-left: 16.93% !important;
    margin-top: 20.00% !important;
    font-size: 35px !important;
  }

  .elementor-element-1612a26 {
    position: relative !important;
  }

  /* Responsividade do texto do header - tamanho de fonte responsivo */
  /* Desktop (1920px+) - 35px */
  @media (min-width: 1920px) {
    .elementor-element-8cc05f8 p {
      margin-left: 34.93% !important;
      margin-top: 25% !important;
      font-size: 35px !important;
    }
  }

  /* Notebook (1367px a 1919px) - 28px */
  @media (min-width: 1367px) and (max-width: 1919px) {
    .elementor-element-8cc05f8 p {
      margin-left: 8vw !important;
      margin-top: 20% !important;
      font-size: 28px !important;
    }
  }

  /* Tablet grande (1081px a 1366px) - 24px */
  @media (min-width: 1081px) and (max-width: 1366px) {
    .elementor-element-8cc05f8 p {
      margin-left: 8vw !important;
      margin-top: 18% !important;
      font-size: 24px !important;
    }
  }

  /* Tablet (769px a 1080px) - 20px */
  @media (min-width: 769px) and (max-width: 1080px) {
    .elementor-element-8cc05f8 p {
      margin-left: 5vw !important;
      margin-top: 15% !important;
      font-size: 20px !important;
    }
  }

  /* Remove a imagem do fluxo flexbox da coluna */
  .elementor-3059 .elementor-element.elementor-element-23fe832 .elementor-widget-wrap {
    display: block !important;
    align-items: unset !important;
    justify-content: unset !important;
  }

  /* Ajusta a posição vertical da imagem lateral - padrão para notebook (1536px) */
  .elementor-3059 .elementor-element.elementor-element-23fe832.elementor-column.elementor-element[data-element_type="column"]>.elementor-column-wrap.elementor-element-populated>.elementor-widget-wrap {
    top: 417px !important;
  }

  /* Para telas grandes (1920px+) */
  @media (min-width: 1920px) {
    .elementor-3059 .elementor-element.elementor-element-23fe832.elementor-column.elementor-element[data-element_type="column"]>.elementor-column-wrap.elementor-element-populated>.elementor-widget-wrap {
      top: 633px !important;
    }
  }

  /* Fixa a imagem no canto direito inferior do header */
  .elementor-3059 .elementor-element.elementor-element-d23a435 {
    position: absolute !important;
    bottom: 0 !important;
    right: 0 !important;
    z-index: 10 !important;
    width: 685px !important;
    height: 80px !important;
  }

  .elementor-3059 .elementor-element.elementor-element-d23a435 .elementor-image img {
    width: 685px !important;
    height: 80px !important;
    object-fit: contain !important;
  }

  /* Responsividade da imagem lateral */
  @media (max-width: 1920px) {

    .elementor-3059 .elementor-element.elementor-element-d23a435,
    .elementor-3059 .elementor-element.elementor-element-d23a435 .elementor-image img {
      width: calc(685 * 100vw / 1920) !important;
      height: calc(80 * 100vw / 1920) !important;
    }
  }

  /* Ajuste para telas entre 768px e 1080px - imagem se ajusta corretamente */
  @media (min-width: 769px) and (max-width: 1080px) {

    .elementor-3059 .elementor-element.elementor-element-d23a435,
    .elementor-3059 .elementor-element.elementor-element-d23a435 .elementor-image img {
      width: calc(685 * 100vw / 1920) !important;
      height: calc(80 * 100vw / 1920) !important;
      max-width: 100% !important;
    }
  }

  /* Remove padding do header e containers */
  .elementor-3059 .elementor-element.elementor-element-c391105,
  .elementor-3059 .elementor-element.elementor-element-c391105 .elementor-container,
  .elementor-3059 .elementor-element.elementor-element-c391105 .elementor-row,
  .elementor-3059 .elementor-element.elementor-element-c391105 .elementor-column {
    padding-bottom: 0 !important;
  }

  .elementor-element-c391105 .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated {
    padding-right: 0 !important;
    padding-bottom: 0 !important;
  }

  /* ============================================
   SECTION2 - Soluções (Cards)
   ============================================ */

  /* Padronizar todos os ícones dos cards de soluções em 150x150px */
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section .elementor-element.elementor-widget-image .elementor-image img {
    width: 100px !important;
    height: 100px !important;
    object-fit: contain !important;
  }

  /* Container principal dos cards - centralizado */
  .elementor-element-5dfe2da {
    text-align: center !important;
    width: 100% !important;
  }

  /* Container que agrupa os cards - centralizado */
  .elementor-element-5dfe2da .elementor-widget-wrap {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
    position: relative !important;
    font-size: 0 !important;
    /* Remove espaços entre inline-block */
  }

  /* Primeira linha - 3 cards lado a lado usando inline-block */
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-08ba910,
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-699f94c,
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-0b16098 {
    display: inline-block !important;
    vertical-align: top !important;
    width: calc(33.333% - 0.67px) !important;
    max-width: calc(33.333% - 0.67px) !important;
    margin: 0 !important;
    margin-top: 40px !important;
    /* Espaçamento entre título e primeira linha */
    padding: 0 20px !important;
    padding-bottom: 0 !important;
    /* Remove padding-bottom do post-3059.css */
    box-sizing: border-box !important;
    position: relative !important;
    border-right: none !important;
    /* Remove border do card */
    font-size: 16px !important;
    /* Restaura tamanho da fonte */
  }

  /* Segunda linha - 4 cards lado a lado usando inline-block */
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-403f4a9,
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-a8282db,
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-26117a0,
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-f223389 {
    display: inline-block !important;
    vertical-align: top !important;
    width: calc(25% - 0.75px) !important;
    max-width: calc(25% - 0.75px) !important;
    margin: 0 !important;
    padding: 0 20px !important;
    /* Padronizado igual à primeira linha */
    padding-bottom: 0 !important;
    /* Remove padding-bottom do post-3059.css */
    box-sizing: border-box !important;
    position: relative !important;
    border-right: none !important;
    margin-top: 60px !important;
    /* Espaçamento fixo igual em todas as telas */
    /* Remove border do card */
    font-size: 16px !important;
    /* Restaura tamanho da fonte */
  }

  /* ============================================
   BREAKPOINTS PARA TELAS GRANDES (1920px+)
   Cards - Linha 1 e Linha 2
   ============================================ */

  @media (min-width: 1920px) {

    /* Primeira linha - ajustes para telas grandes */
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-08ba910,
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-699f94c,
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-0b16098 {
      padding: 0 30px !important;
      /* Padding maior para telas grandes */
    }

    /* Segunda linha - ajustes para telas grandes */
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-403f4a9,
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-a8282db,
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-26117a0,
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-f223389 {
      padding: 0 30px !important;
      /* Padding maior para telas grandes */
      margin-top: 80px !important;
      /* Espaçamento maior entre linhas */
    }

    /* Linhas verticais - primeira linha - altura maior para telas grandes */
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-08ba910::after,
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-699f94c::after {
      height: 414px !important;
      /* Altura maior para telas grandes */
    }

    /* Linhas verticais - segunda linha - altura maior para telas grandes */
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-403f4a9::after,
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-a8282db::after,
    .elementor-element-5dfe2da .elementor-section.elementor-inner-section.elementor-element-26117a0::after {
      height: 460px !important;
      /* Altura maior para telas grandes */
    }

    /* Container dos cards - max-width maior para telas grandes */
    .elementor-element-5dfe2da .elementor-widget-wrap {
      max-width: 1600px !important;
      /* Container maior para telas grandes */
    }

    /* Ajustar imagem lateral direita para telas grandes - mais para cima */
    .elementor-3059 .elementor-element.elementor-element-cb67cdd .elementor-widget-wrap {
      top: 550px !important;
      /* Valor menor que 600px = mais para cima */
    }
  }

  /* Linha separadora horizontal removida - mantendo apenas linhas verticais */

  /* Garantir que as sections internas não quebrem o layout */
  .elementor-element-5dfe2da .elementor-section.elementor-inner-section {
    margin: 0 !important;
  }

  /* ============================================
   FOOTER - Flexbox, largura total, altura 350px
   ============================================ */

  /* Unificar as duas sections do footer visualmente */
  .elementor-3059 .elementor-element.elementor-element-c9aef1d,
  .elementor-3059 .elementor-element.elementor-element-5d611da {
    width: 100% !important;
    max-width: 100% !important;
    background-color: #0F0F0F !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Container principal do footer - flexbox vertical */
  .elementor-3059 .elementor-element.elementor-element-c9aef1d .elementor-container,
  .elementor-3059 .elementor-element.elementor-element-5d611da .elementor-container {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
  }

  /* Primeira section - logos com flexbox horizontal */
  .elementor-3059 .elementor-element.elementor-element-c9aef1d .elementor-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 850px !important;
    padding: 0px 0px !important;
    margin: 0 !important;
  }

  /* Logo Google - tamanho específico */
  .elementor-3059 .elementor-element.elementor-element-2010eca .elementor-image img {
    width: 80px !important;
    height: 80px !important;
    object-fit: contain !important;
  }

  /* Logo Mingle - tamanho específico */
  .elementor-3059 .elementor-element.elementor-element-59d05ba .elementor-image img {
    width: 120px !important;
    height: 120px !important;
    object-fit: contain !important;
  }

  /* Segunda section - linha e texto com flexbox vertical */
  .elementor-3059 .elementor-element.elementor-element-5d611da .elementor-row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 0 20px 20px 20px !important;
    margin: 0 !important;
  }

  /* Linha divisória - largura 1064px centralizada */
  .elementor-3059 .elementor-element.elementor-element-a51f9cc {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .elementor-3059 .elementor-element.elementor-element-a51f9cc .elementor-divider-separator {
    width: 1064px !important;
    max-width: 1064px !important;
    border-top: 1px solid #FFFFFF !important;
  }

  .elementor-3059 .elementor-element.elementor-element-a51f9cc .elementor-divider {
    padding: 0 !important;
  }

  /* Texto do footer - centralizado */
  .elementor-3059 .elementor-element.elementor-element-c1ce3fd {
    width: 100% !important;
    text-align: center !important;
    padding: 0 0 0 0 !important;
    border: none !important;
  }

  .elementor-3059 .elementor-element.elementor-element-c1ce3fd>.elementor-widget-container {
    padding: 0 !important;
  }

  /* Altura total do footer combinado - 350px */
  .elementor-3059 .elementor-element.elementor-element-c9aef1d {
    min-height: auto !important;
    height: auto !important;
  }

  .elementor-3059 .elementor-element.elementor-element-5d611da {
    min-height: auto !important;
    height: auto !important;
  }

  /* Remover padding das colunas */
  .elementor-3059 .elementor-element.elementor-element-c9aef1d .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated,
  .elementor-3059 .elementor-element.elementor-element-5d611da .elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated {
    padding: 0 !important;
  }

  /* Garantir que as colunas não quebrem o layout */
  .elementor-3059 .elementor-element.elementor-element-c565f20,
  .elementor-3059 .elementor-element.elementor-element-daa909a,
  .elementor-3059 .elementor-element.elementor-element-b9bae48 {
    width: auto !important;
    flex: 0 0 auto !important;
  }

}

/* Fim do @media (min-width: 769px) - Desktop/Notebook apenas */