.elementor-2356 .elementor-element.elementor-element-fd1feb6 > .elementor-container{min-height:135px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2356 .elementor-element.elementor-element-c187df1{text-align:center;}.elementor-2356 .elementor-element.elementor-element-c187df1 .elementor-heading-title{color:var( --e-global-color-f767dbd );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-2356 .elementor-element.elementor-element-b5a1c8a{--divider-border-style:solid;--divider-color:var( --e-global-color-b7655a6 );--divider-border-width:1px;width:100%;max-width:100%;}.elementor-2356 .elementor-element.elementor-element-b5a1c8a .elementor-divider-separator{width:100%;}.elementor-2356 .elementor-element.elementor-element-b5a1c8a .elementor-divider{padding-block-start:15px;padding-block-end:15px;}:root{--page-title-display:none;}/* Start custom CSS for shortcode, class: .elementor-element-ea0faca */.box_fomulario {
    width: 100%;
    margin: 0 auto;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}


/* Estilos Gerais do Formulário */
.meu-formulario-personalizado {
    margin: 20px auto;
    width: 100%;
    padding: 30px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #ffffff;
    font-family: sans-serif; /* Ou a fonte do seu tema */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  }
  
  /* Linhas do Formulário (para layout em colunas) */
  .meu-formulario-personalizado .form-row {
    display: flex;
    flex-wrap: wrap; /* Permite que os itens quebrem para a próxima linha em telas menores */
    gap: 20px; /* Espaço entre os campos na mesma linha */
    margin-bottom: 15px;
  }
  
  /* Grupos de Campos (ocupam espaço na linha) */
  .meu-formulario-personalizado .form-group {
    flex: 1; /* Faz com que os grupos tentem ocupar o mesmo espaço */
    min-width: 250px; /* Largura mínima antes de quebrar a linha */
    display: flex;
    flex-direction: column;
  }
  
  /* Estilo para Labels */
  .meu-formulario-personalizado label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 0.9em;
    color: #333;
  }
  
  /* Estilo para Inputs, Select e Textarea */
  .meu-formulario-personalizado input[type="text"],
  .meu-formulario-personalizado input[type="email"],
  .meu-formulario-personalizado input[type="tel"],
  .meu-formulario-personalizado input[type="file"],
  .meu-formulario-personalizado select,
  .meu-formulario-personalizado textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box; /* Importante para padding não aumentar o tamanho total */
    font-size: 1em;
    transition: border-color 0.3s ease;
  }
  
  .meu-formulario-personalizado input:focus,
  .meu-formulario-personalizado select:focus,
  .meu-formulario-personalizado textarea:focus {
    border-color: #007bff; /* Ou a cor primária do seu site */
    outline: none;
  }
  
  /* Estilo para Radio Buttons */
  .meu-formulario-personalizado .tipo-pessoa-group {
      margin-bottom: 25px;
      justify-content: flex-start; /* Alinha radios no início */
      gap: 30px; /* Espaço maior entre as opções PF/PJ */
  }
  
  .meu-formulario-personalizado .radio-container {
      display: flex;
      align-items: center;
      gap: 8px; /* Espaço entre o radio e o label */
  }
  
  .meu-formulario-personalizado input[type="radio"] {
     /* Estilos personalizados para radio (opcional, pode variar) */
     width: auto;
     margin-right: 5px;
     accent-color: #007bff; /* Cor do radio selecionado */
  }
  .meu-formulario-personalizado input[type="radio"] + label {
     font-weight: normal; /* Label do radio normal */
     margin-bottom: 0; /* Remove margem padrão do label */
     cursor: pointer;
  }
  
  
  /* Seções Específicas */
  .meu-formulario-personalizado .procurador-section p,
  .meu-formulario-personalizado .documentos-section p,
  .meu-formulario-personalizado .form-group > p.section-heading {
      font-weight: bold;
      margin-top: 20px;
      margin-bottom: 10px;
      color: #333;
      font-size: 1.1em;
      width: 100%; /* Para ocupar a linha toda */
  }
  .meu-formulario-personalizado .procurador-section .form-row {
      margin-bottom: 5px; /* Menos espaço abaixo dos radios Sim/Não */
  }
  
  /* Estilo do Input File (Básico) */
  .meu-formulario-personalizado input[type="file"] {
      padding: 5px; /* Ajuste padding se necessário */
      border: none; /* Remove borda padrão se usar label estilizada */
  }
  .meu-formulario-personalizado .file-upload-group label {
      /* Se quiser estilizar o label para parecer um botão */
      cursor: pointer;
      display: inline-block;
      /* padding: 10px 15px; */
      /* background-color: #f0f0f0; */
      /* border: 1px solid #ccc; */
      /* border-radius: 4px; */
  }
  .meu-formulario-personalizado .file-upload-group label span {
      margin-right: 8px; /* Espaço para o ícone */
  }
  /* .meu-formulario-personalizado .file-upload-group input[type="file"] { */
      /* display: none; /* Esconde o input padrão se usar label estilizada */
  /* } */
  
  .meu-formulario-personalizado .file-size-info p {
      font-size: 0.85em;
      color: #666;
      margin-top: 5px;
      margin-bottom: 0;
      text-align: right; /* Alinha à direita se estiver na coluna da direita */
  }
  .meu-formulario-personalizado .file-size-info {
      align-items: flex-end; /* Alinha o conteúdo na base */
      justify-content: flex-end;
  }
  
  
  /* Classe Utilitária para Ocultar Elementos */
  .meu-formulario-personalizado .hidden {
    display: none !important; /* Garante que será ocultado */
  }
  
  /* Botão de Envio */
  .meu-formulario-personalizado .submit-button-container {
      text-align: right; /* Alinha o botão à direita */
      margin-top: 25px;
  }
  .meu-formulario-personalizado .meu-botao-submit {
    padding: 12px 25px;
    background-color: #2F2F2F; /* Cor primária */
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 1em;
    font-weight: bold;
    transition: background-color 0.3s ease;
  }
  
  .meu-formulario-personalizado .meu-botao-submit:hover {
    background-color: #E6BF5F; /* Cor primária mais escura */
  }
  
  /* Responsividade (Exemplo Básico) */
  @media (max-width: 768px) {
    .meu-formulario-personalizado .form-row {
      flex-direction: column; /* Empilha os campos em telas menores */
      gap: 0; /* Remove o gap entre colunas */
    }
    .meu-formulario-personalizado .form-group {
       margin-bottom: 15px; /* Adiciona espaço entre os campos empilhados */
       min-width: 100%; /* Ocupa largura total */
    }
    .meu-formulario-personalizado .file-size-info {
       justify-content: flex-start; /* Alinha info de tamanho à esquerda */
       align-items: flex-start;
    }
     .meu-formulario-personalizado .file-size-info p {
         text-align: left;
     }
     .meu-formulario-personalizado .submit-button-container {
          text-align: center; /* Centraliza o botão */
     }
  }/* End custom CSS */